100 Lines, 30 Questions Benchmark: timing 100000 iterations of test_jcwren, test_lucs, test_lucsjcwren, test_lucsjcwren2... test_jcwren: 73 wallclock secs (43.26 usr + 0.08 sys = 43.34 CPU) test_lucs: 30 wallclock secs (17.27 usr + 0.01 sys = 17.28 CPU) test_lucsjcwren: 28 wallclock secs (16.32 usr + 0.00 sys = 16.32 CPU) test_lucsjcwren2: 26 wallclock secs (15.61 usr + 0.01 sys = 15.62 CPU) 500 Lines, 150 Questions Benchmark: timing 100000 iterations of test_jcwren, test_lucs, test_lucsjcwren, test_lucsjcwren2... test_jcwren: 379 wallclock secs (217.85 usr + 0.15 sys = 218.00 CPU) test_lucs: 145 wallclock secs ( 82.29 usr + 0.19 sys = 82.48 CPU) test_lucsjcwren: 137 wallclock secs ( 79.63 usr + 0.14 sys = 79.77 CPU) test_lucsjcwren2: 128 wallclock secs ( 75.22 usr + 0.02 sys = 75.24 CPU) 1000 Lines, 300 Questions Benchmark: timing 100000 iterations of test_jcwren, test_lucs, test_lucsjcwren, test_lucsjcwren2... test_jcwren: 754 wallclock secs (438.51 usr + 0.50 sys = 439.01 CPU) test_lucs: 291 wallclock secs (168.96 usr + 0.12 sys = 169.08 CPU) test_lucsjcwren: 277 wallclock secs (162.44 usr + 0.04 sys = 162.48 CPU) test_lucsjcwren2: 267 wallclock secs (154.43 usr + 0.11 sys = 154.54 CPU)