diff --git a/mux21.lgf b/mux21.lgf
new file mode 100644
index 0000000000000000000000000000000000000000..154a4a6ba626eef00bb0ccac4b04b54a20001389
--- /dev/null
+++ b/mux21.lgf
@@ -0,0 +1,96 @@
+-5
+f s
+n 12
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+s 0
+w 21
+3329 3330 3335 3330 8 U
+3342 3333 3348 3333 10 U
+3342 3325 3344 3325 10 U
+3343 3331 3356 3331 12 U
+3356 3327 3358 3327 12 U
+3352 3324 3358 3324 11 U
+3327 3323 3344 3323 7 U
+3327 3347 3346 3347 7 U
+3348 3347 3366 3347 9 U
+3329 3348 3346 3348 8 U
+3335 3343 3348 3343 1 U
+3348 3339 3348 3344 1 U
+3335 3332 3335 3344 1 U
+3342 3325 3342 3333 10 U
+3356 3327 3356 3331 12 U
+3358 3324 3358 3325 11 U
+3327 3323 3327 3347 7 U
+3329 3330 3329 3348 8 U
+3366 3326 3366 3347 9 U
+3338 3344 3338 3349 2 U
+3347 3343 3347 3346 1 U
+p 3
+3335 3343 11 13
+3348 3343 11 12
+3347 3343 11 21
+l 1
+3356 3351 10 "mux_2_1"
+b 1
+3325 3317 3374 3358
+g 5
+INST0
+3347 3348 0 14 0 0 2
+1 9 6 5 3 4 8 7
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+OR
+3362 3326 0 12 0 0 0
+11 12 9
+
+AND
+3348 3324 0 11 0 0 0
+7 10 11
+
+AND
+3339 3331 0 10 0 0 0
+8 1 12
+
+INV
+3348 3336 1 9 0 0 0
+1 10
+
+h 1
+21 0 sq
+.
diff --git a/mux81.lgf b/mux81.lgf
new file mode 100644
index 0000000000000000000000000000000000000000..fe4ae0004a2392991d561489d1fd7816d31ab501
--- /dev/null
+++ b/mux81.lgf
@@ -0,0 +1,316 @@
+-5
+f s
+n 58
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+s 0
+w 74
+3306 3339 3310 3339 1 U
+3306 3331 3310 3331 1 U
+3311 3334 3315 3334 30 U
+3311 3342 3315 3342 29 U
+3306 3347 3310 3347 1 U
+3300 3358 3309 3358 24 U
+3306 3355 3310 3355 1 U
+3311 3358 3315 3358 46 U
+3318 3351 3322 3351 36 U
+3319 3348 3323 3348 9 U
+3324 3351 3328 3351 41 U
+3315 3353 3322 3353 46 U
+3311 3350 3318 3350 36 U
+3315 3340 3318 3340 30 U
+3319 3329 3326 3329 9 U
+3318 3343 3322 3343 30 U
+3319 3340 3323 3340 9 U
+3324 3343 3328 3343 35 U
+3315 3345 3322 3345 29 U
+3328 3346 3335 3346 35 U
+3328 3348 3335 3348 41 U
+3332 3343 3336 3343 23 U
+3306 3324 3315 3324 1 U
+3337 3346 3344 3346 2 U
+3302 3307 3332 3307 23 U
+3303 3309 3326 3309 9 U
+3304 3311 3315 3311 1 U
+3294 3334 3309 3334 8 U
+3294 3314 3301 3314 8 U
+3295 3336 3309 3336 7 U
+3295 3315 3301 3315 7 U
+3296 3342 3309 3342 6 U
+3296 3316 3301 3316 6 U
+3297 3317 3301 3317 10 U
+3297 3344 3309 3344 10 U
+3298 3350 3309 3350 5 U
+3298 3318 3301 3318 5 U
+3299 3352 3309 3352 4 U
+3299 3319 3301 3319 4 U
+3300 3320 3301 3320 24 U
+3292 3360 3309 3360 3 U
+3292 3321 3301 3321 3 U
+3305 3317 3344 3317 2 U
+3310 3339 3310 3341 1 U
+3310 3331 3310 3333 1 U
+3310 3347 3310 3349 1 U
+3310 3355 3310 3357 1 U
+3306 3324 3306 3355 1 U
+3323 3348 3323 3350 9 U
+3315 3353 3315 3358 46 U
+3318 3350 3318 3351 36 U
+3315 3342 3315 3345 29 U
+3315 3334 3315 3340 30 U
+3318 3340 3318 3343 30 U
+3319 3329 3319 3348 9 U
+3323 3340 3323 3342 9 U
+3336 3343 3336 3345 23 U
+3328 3343 3328 3346 35 U
+3328 3348 3328 3351 41 U
+3332 3307 3332 3343 23 U
+3302 3307 3302 3313 23 U
+3326 3309 3326 3329 9 U
+3303 3309 3303 3313 9 U
+3315 3311 3315 3325 1 U
+3294 3314 3294 3334 8 U
+3295 3315 3295 3336 7 U
+3296 3316 3296 3342 6 U
+3297 3317 3297 3344 10 U
+3298 3318 3298 3350 5 U
+3299 3319 3299 3352 4 U
+3300 3320 3300 3358 24 U
+3292 3320 3292 3360 3 U
+3344 3317 3344 3346 2 U
+3304 3311 3304 3314 1 U
+p 6
+3306 3347 5 48
+3306 3331 2 48
+3306 3339 1 48
+3319 3340 17 55
+3315 3324 23 64
+3292 3321 42 72
+l 1
+3324 3361 10 "mux_8_1"
+b 1
+3291 3303 3358 3371
+g 8
+INST3
+3303 3318 0 18 0 0 2
+23 9 1 22 21 20 2 19 18 17 16 15 14 13 12 11 3 24 4 5 10 6 7 8
+[inst-of] C"mux_8_1"
+[disp-inst-name] B1
+
+INST0
+3336 3347 0 3 0 0 2
+23 2 28 27 26 41 25 35
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3323 3344 0 3 0 0 2
+9 35 34 33 32 29 31 30
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3323 3352 0 3 0 0 2
+9 41 40 39 38 46 37 36
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3359 0 3 0 0 2
+1 46 45 44 43 3 42 24
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3351 0 3 0 0 2
+1 36 50 49 48 4 47 5
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3335 0 3 0 0 2
+1 30 54 53 52 7 51 8
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3343 0 3 0 0 2
+1 29 58 57 56 10 55 6
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+h 1
+21 0 sq
+.
diff --git a/mux_16_8.lgf b/mux_16_8.lgf
new file mode 100644
index 0000000000000000000000000000000000000000..9d13893073b34b8a662c10c0bd7eebcf36eb9f4d
--- /dev/null
+++ b/mux_16_8.lgf
@@ -0,0 +1,702 @@
+-5
+f s
+n 132
+16 0
+2
+
+16 0
+2
+
+16 0
+2
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+0
+
+16 0
+2
+
+16 0
+0
+
+s 0
+w 174
+3306 3339 3310 3339 132 U
+3306 3331 3310 3331 132 U
+3311 3334 3315 3334 125 U
+3311 3342 3315 3342 131 U
+3306 3347 3310 3347 132 U
+3300 3358 3309 3358 106 U
+3306 3355 3310 3355 132 U
+3311 3358 3315 3358 112 U
+3318 3351 3322 3351 99 U
+3319 3348 3323 3348 105 U
+3324 3351 3328 3351 104 U
+3315 3353 3322 3353 112 U
+3311 3350 3318 3350 99 U
+3315 3340 3318 3340 125 U
+3319 3329 3326 3329 105 U
+3318 3343 3322 3343 125 U
+3319 3340 3323 3340 105 U
+3324 3343 3328 3343 98 U
+3315 3345 3322 3345 131 U
+3328 3346 3335 3346 98 U
+3328 3348 3335 3348 104 U
+3332 3343 3336 3343 93 U
+3306 3324 3315 3324 132 U
+3337 3346 3344 3346 92 U
+3302 3307 3332 3307 93 U
+3303 3309 3326 3309 105 U
+3304 3311 3315 3311 132 U
+3294 3334 3309 3334 119 U
+3294 3314 3301 3314 119 U
+3295 3336 3309 3336 121 U
+3295 3315 3301 3315 121 U
+3296 3342 3309 3342 126 U
+3296 3316 3301 3316 126 U
+3297 3317 3301 3317 75 U
+3297 3344 3309 3344 75 U
+3298 3350 3309 3350 113 U
+3298 3318 3301 3318 113 U
+3299 3352 3309 3352 115 U
+3299 3319 3301 3319 115 U
+3300 3320 3301 3320 106 U
+3292 3360 3309 3360 108 U
+3292 3321 3301 3321 108 U
+3305 3317 3344 3317 92 U
+3407 3302 3416 3302 9 U
+3402 3319 3406 3319 9 U
+3402 3311 3406 3311 9 U
+3402 3327 3406 3327 9 U
+3402 3335 3406 3335 9 U
+3402 3303 3407 3303 9 U
+3403 3353 3407 3353 9 U
+3403 3345 3407 3345 9 U
+3403 3361 3407 3361 9 U
+3403 3369 3407 3369 9 U
+3408 3364 3410 3364 36 U
+3407 3338 3410 3338 35 U
+3402 3279 3416 3279 9 U
+3395 3324 3405 3324 8 U
+3385 3282 3397 3282 10 U
+3384 3283 3397 3283 24 U
+3384 3322 3405 3322 24 U
+3382 3285 3397 3285 30 U
+3382 3338 3405 3338 30 U
+3383 3330 3405 3330 29 U
+3383 3284 3397 3284 29 U
+3381 3286 3397 3286 15 U
+3380 3356 3406 3356 28 U
+3380 3287 3397 3287 28 U
+3379 3364 3406 3364 27 U
+3379 3288 3397 3288 27 U
+3378 3372 3406 3372 26 U
+3378 3289 3397 3289 26 U
+3396 3290 3397 3290 25 U
+3395 3291 3397 3291 8 U
+3385 3313 3399 3313 10 U
+3381 3348 3406 3348 15 U
+3399 3314 3405 3314 10 U
+3396 3316 3405 3316 25 U
+3394 3292 3397 3292 31 U
+3394 3332 3405 3332 31 U
+3393 3293 3397 3293 32 U
+3393 3340 3405 3340 32 U
+3392 3350 3406 3350 7 U
+3392 3294 3397 3294 7 U
+3390 3296 3397 3296 34 U
+3390 3366 3406 3366 34 U
+3388 3374 3406 3374 6 U
+3388 3297 3397 3297 6 U
+3391 3295 3397 3295 33 U
+3391 3358 3406 3358 33 U
+3407 3314 3412 3314 5 U
+3403 3285 3412 3285 5 U
+3403 3287 3413 3287 68 U
+3407 3322 3413 3322 68 U
+3407 3330 3415 3330 4 U
+3403 3288 3415 3288 4 U
+3403 3290 3410 3290 35 U
+3408 3348 3419 3348 3 U
+3403 3292 3419 3292 3 U
+3408 3356 3421 3356 2 U
+3403 3294 3421 3294 2 U
+3403 3295 3423 3295 36 U
+3410 3363 3423 3363 36 U
+3408 3372 3425 3372 1 U
+3403 3296 3425 3296 1 U
+3310 3339 3310 3341 132 U
+3310 3331 3310 3333 132 U
+3310 3347 3310 3349 132 U
+3310 3355 3310 3357 132 U
+3306 3324 3306 3355 132 U
+3323 3348 3323 3350 105 U
+3315 3353 3315 3358 112 U
+3318 3350 3318 3351 99 U
+3315 3342 3315 3345 131 U
+3315 3334 3315 3340 125 U
+3318 3340 3318 3343 125 U
+3319 3329 3319 3348 105 U
+3323 3340 3323 3342 105 U
+3336 3343 3336 3345 93 U
+3328 3343 3328 3346 98 U
+3328 3348 3328 3351 104 U
+3332 3307 3332 3343 93 U
+3302 3307 3302 3313 93 U
+3326 3309 3326 3329 105 U
+3303 3309 3303 3313 105 U
+3315 3311 3315 3325 132 U
+3294 3314 3294 3334 119 U
+3295 3315 3295 3336 121 U
+3296 3316 3296 3342 126 U
+3297 3317 3297 3344 75 U
+3298 3318 3298 3350 113 U
+3299 3319 3299 3352 115 U
+3300 3320 3300 3358 106 U
+3292 3320 3292 3360 108 U
+3344 3317 3344 3346 92 U
+3304 3311 3304 3314 132 U
+3416 3279 3416 3302 9 U
+3402 3279 3402 3281 9 U
+3407 3302 3407 3303 9 U
+3406 3319 3406 3321 9 U
+3406 3327 3406 3329 9 U
+3406 3335 3406 3337 9 U
+3402 3303 3402 3335 9 U
+3407 3353 3407 3355 9 U
+3407 3361 3407 3363 9 U
+3407 3369 3407 3371 9 U
+3403 3335 3403 3369 9 U
+3385 3282 3385 3313 10 U
+3384 3283 3384 3324 24 U
+3382 3285 3382 3338 30 U
+3383 3284 3383 3330 29 U
+3381 3286 3381 3348 15 U
+3380 3287 3380 3356 28 U
+3379 3288 3379 3364 27 U
+3378 3289 3378 3372 26 U
+3399 3313 3399 3314 10 U
+3407 3345 3407 3347 9 U
+3406 3311 3406 3313 9 U
+3395 3291 3395 3324 8 U
+3396 3290 3396 3316 25 U
+3394 3292 3394 3332 31 U
+3393 3293 3393 3340 32 U
+3392 3294 3392 3350 7 U
+3390 3296 3390 3366 34 U
+3388 3297 3388 3374 6 U
+3391 3295 3391 3358 33 U
+3412 3285 3412 3314 5 U
+3413 3287 3413 3322 68 U
+3415 3288 3415 3330 4 U
+3410 3290 3410 3338 35 U
+3419 3292 3419 3348 3 U
+3421 3294 3421 3356 2 U
+3423 3295 3423 3363 36 U
+3410 3363 3410 3364 36 U
+3425 3296 3425 3372 1 U
+p 14
+3306 3347 5 109
+3306 3331 2 109
+3306 3339 1 109
+3319 3340 17 116
+3315 3324 23 125
+3292 3321 42 133
+3402 3327 47 142
+3402 3311 46 142
+3402 3319 45 142
+3403 3361 52 146
+3403 3345 51 146
+3403 3353 50 146
+3403 3335 48 146
+3384 3322 60 148
+l 2
+3324 3361 10 "mux_8_1"
+3426 3286 12 "mux_16_8"
+b 2
+3291 3303 3358 3371
+3373 3278 3445 3378
+g 17
+INST0
+3406 3315 0 3 0 0 2
+9 5 14 13 12 25 11 10
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3407 3349 0 3 0 0 2
+9 3 19 18 17 7 16 15
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3406 3323 0 3 0 0 2
+9 68 23 22 21 8 20 24
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3407 3373 0 3 0 0 2
+9 1 42 41 40 6 39 26
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3407 3365 0 3 0 0 2
+9 36 46 45 44 34 43 27
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3407 3357 0 3 0 0 2
+9 2 50 49 48 33 47 28
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3406 3339 0 3 0 0 2
+9 35 54 53 52 32 51 30
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3406 3331 0 3 0 0 2
+9 4 58 57 56 31 55 29
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST5
+3400 3290 0 20 0 0 2
+74 73 37 38 9 72 71 70 5 69 68 4 67 35 66 3 65 2 36 1 64 63 62 61 60 59 6 34 33 7 32 31 8 25 26 27 28 15 30 29 24 10
+[inst-of] C"mux_16_8"
+[disp-inst-name] B1
+
+INST3
+3303 3318 0 18 0 0 2
+93 105 132 87 86 85 92 84 83 82 81 80 79 78 77 76 108 106 115 113 75 126 121 119
+[inst-of] C"mux_8_1"
+[disp-inst-name] B1
+
+INST0
+3336 3347 0 3 0 0 2
+93 92 91 90 89 104 88 98
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3323 3344 0 3 0 0 2
+105 98 97 96 95 131 94 125
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3323 3352 0 3 0 0 2
+105 104 103 102 101 112 100 99
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3359 0 3 0 0 2
+132 112 111 110 109 108 107 106
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3351 0 3 0 0 2
+132 99 118 117 116 115 114 113
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3335 0 3 0 0 2
+132 125 124 123 122 121 120 119
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+INST0
+3310 3343 0 3 0 0 2
+132 131 130 129 128 75 127 126
+[inst-of] C"mux_2_1"
+[disp-inst-name] B1
+
+h 1
+21 0 sq
+.