Skip to main content

Improving Performance on 'Easy' Problems

Answered

Comments

3 comments

  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Hi Nate,

    It seems like I am taking silly run-time hits like ~0.004s to simply update the constraints. Normally, these would be negligible, but the 'easiness' of the problem means that such hits are quite significant.

    How exactly are you updating your constraints in between two solves? Could you please post a code snippet? In best case even a minimal reproducible example?

    Are there recommended ways to speed up this problem?

    You should definitely try Gurobi's automatic parameter tuning tool (an older video can be found here). This way, you can let Gurobi find parameters to decrease running time for your base model which then hopefully would apply to the modified models as well. Since your LP can be solved very quickly, it should be enought to let the parameter tool run for a couple of hours to hopefully find parameters which improve performance of your LP. Also experimenting with the LPWarmStart parameter might be useful.

    Impose an arbitrary lower bound, eps (canonically chosen eps=1), on how close the found point can be from each hyperplane (so as to get a point in the strict interior) and

    Did you try experimenting with different values of eps?

    (arbitrarily) setting an objective of minimizing the sum of the distances to each hyperplane.

    A different objective function might improve or hurt performance. Did you try solving without any objective function?

    Best regards, 
    Jaromił

    0
  • Nate MacFadden
    Gurobi-versary
    First Comment
    First Question

    Hello Jaromił,
    Unfortunately, I lost my drafted response. I will recreate it here.

    First, please note an error in my previous message: the hyperplane constraints can have other integer values, but said values will be rare. It will predominantly be made of +/-1 and +/-2.

    Thank you for all of the help! I will respond point-by-point:

    1. I have attached a code snippet at the end of this message. The nature of constraints in this problem are quite important, so I unfortunately have to include long lists of constraints. My apologies for the bulk. In the future, is there a way to upload this as a file?
    2. I have not heard of either the parameter tuning tool or LPWarmStart. I imagine that the default value of 1 would be a good choice, but I should experiment with setting LPWarmStart=2. Thank you very much for those references!
    3. Theoretically, any (positive) eps should be allowed. Due to this, I had tried a range of eps, from very small values, to values as large as ~10. I observed no difference in timing. Given that the value of 1 has a nice meaning in my research, and that integers are likely easier for Gurobi, I left it as eps=1.
    4. I tried removing the objective with no noticeable changes to the runtime on my computer.

    Below I attach my code. Given that my reports were based off of my local computer, your timings will likely differ. Even just running this code on my computer at different times (e.g., right after a restart, right before a restart, etc.), I observe different runtimes. Thus the previously quoted times are just meant to be representative. Further, given the small run-times, my method of profiling non-negligibly skews up the run-times.

     

    Also, thank you again, very much, for the help.,

    Nate

    import gurobipy as gp
    import time

    # Define hyperplanes
    # ------------------
    H0_sparse = [{148: -1, 193: -1, 282: 1, 24: 1}, {148: -1, 282: -1, 193: 1, 53: 1}, {193: -1, 282: -1, 148: 1, 363: 1}, {148: -1, 24: -1, 193: 1, 14: 1}, {193: -1, 24: -1, 148: 1, 35: 1}, {148: -1, 53: -1, 282: 1, 28: 1}, {282: -1, 53: -1, 148: 1, 3: 1}, {148: -1, 14: -1, 24: 1, 28: 1}, {148: -1, 28: -1, 14: 1, 53: 1}, {14: -1, 28: -1, 148: 1, 1: 1}, {193: -1, 256: -1, 363: 1, 35: 1}, {193: -1, 363: -1, 256: 1, 282: 1}, {256: -2, 193: 1, 334: 1}, {193: -1, 35: -1, 256: 1, 24: 1}, {256: -1, 35: -1, 193: 1, 46: 1}, {282: -2, 193: 1, 3: 1}, {256: -2, 363: 1, 46: 1}, {334: -3, 363: 1, 256: 1, 2: 1}, {256: -1, 46: -1, 334: 1, 35: 1}, {334: -1, 46: -1, 256: 1, 57: 1}, {334: -2, 363: 1, 67: 1}, {363: -2, 334: 1, 3: 1}, {67: -2, 2: 1, 57: 1}, {57: -2, 46: 1, 67: 1}, {282: -2, 363: 1, 53: 1}, {363: -4, 3: 2, 282: 1, 2: 1}, {122: -1, 125: -1, 219: 1, 7: 1}, {122: -1, 219: -1, 125: 1, 53: 1}, {125: -1, 219: -1, 122: 1, 226: 1}, {122: -1, 7: -1, 125: 1, 6: 1}, {125: -1, 7: -1, 122: 1, 8: 1}, {122: -1, 53: -1, 219: 1, 28: 1}, {219: -1, 53: -1, 122: 1, 3: 1}, {122: -1, 6: -1, 7: 1, 28: 1}, {122: -1, 28: -1, 6: 1, 53: 1}, {6: -1, 28: -1, 122: 1, 1: 1}, {125: -1, 128: -1, 226: 1, 8: 1}, {125: -1, 226: -1, 128: 1, 219: 1}, {128: -1, 226: -1, 125: 1, 233: 1}, {125: -1, 8: -1, 128: 1, 7: 1}, {128: -1, 8: -1, 125: 1, 9: 1}, {219: -2, 125: 1, 3: 1}, {128: -1, 131: -1, 233: 1, 9: 1}, {128: -1, 233: -1, 131: 1, 226: 1}, {131: -1, 233: -1, 128: 1, 241: 1}, {128: -1, 9: -1, 131: 1, 8: 1}, {131: -1, 9: -1, 128: 1, 10: 1}, {226: -3, 233: 1, 128: 1, 3: 1}, {131: -1, 134: -1, 241: 1, 10: 1}, {131: -1, 241: -1, 134: 1, 233: 1}, {134: -1, 241: -1, 131: 1, 249: 1}, {131: -1, 10: -1, 134: 1, 9: 1}, {134: -1, 10: -1, 131: 1, 11: 1}, {233: -4, 241: 2, 131: 1, 3: 1}, {134: -1, 137: -1, 249: 1, 11: 1}, {134: -1, 249: -1, 137: 1, 241: 1}, {137: -1, 249: -1, 134: 1, 258: 1}, {134: -1, 11: -1, 137: 1, 10: 1}, {137: -1, 11: -1, 134: 1, 12: 1}, {241: -5, 249: 3, 134: 1, 3: 1}, {137: -1, 141: -1, 258: 1, 12: 1}, {137: -1, 258: -1, 141: 1, 249: 1}, {141: -1, 258: -1, 137: 1, 266: 1}, {137: -1, 12: -1, 141: 1, 11: 1}, {141: -1, 12: -1, 137: 1, 13: 1}, {249: -6, 258: 4, 137: 1, 3: 1}, {141: -1, 145: -1, 266: 1, 13: 1}, {141: -1, 266: -1, 145: 1, 258: 1}, {145: -1, 266: -1, 141: 1, 275: 1}, {141: -1, 13: -1, 145: 1, 12: 1}, {145: -1, 13: -1, 141: 1, 15: 1}, {258: -7, 266: 5, 141: 1, 3: 1}, {145: -1, 150: -1, 275: 1, 15: 1}, {145: -1, 275: -1, 150: 1, 266: 1}, {150: -1, 275: -1, 145: 1, 284: 1}, {145: -1, 15: -1, 150: 1, 13: 1}, {150: -1, 15: -1, 145: 1, 16: 1}, {266: -8, 275: 6, 145: 1, 3: 1}, {150: -1, 154: -1, 284: 1, 16: 1}, {150: -1, 284: -1, 154: 1, 275: 1}, {154: -1, 284: -1, 150: 1, 292: 1}, {150: -1, 16: -1, 154: 1, 15: 1}, {154: -1, 16: -1, 150: 1, 17: 1}, {275: -9, 284: 7, 150: 1, 3: 1}, {154: -1, 158: -1, 292: 1, 17: 1}, {154: -1, 292: -1, 158: 1, 284: 1}, {158: -1, 292: -1, 154: 1, 301: 1}, {154: -1, 17: -1, 158: 1, 16: 1}, {158: -1, 17: -1, 154: 1, 18: 1}, {284: -10, 292: 8, 154: 1, 3: 1}, {158: -1, 163: -1, 301: 1, 18: 1}, {158: -1, 301: -1, 163: 1, 292: 1}, {163: -1, 301: -1, 158: 1, 309: 1}, {158: -1, 18: -1, 163: 1, 17: 1}, {163: -1, 18: -1, 158: 1, 19: 1}, {292: -11, 301: 9, 158: 1, 3: 1}, {163: -1, 168: -1, 309: 1, 19: 1}, {163: -1, 309: -1, 168: 1, 301: 1}, {168: -1, 309: -1, 163: 1, 318: 1}, {163: -1, 19: -1, 168: 1, 18: 1}, {168: -1, 19: -1, 163: 1, 20: 1}, {301: -12, 309: 10, 163: 1, 3: 1}, {168: -1, 173: -1, 318: 1, 20: 1}, {168: -1, 318: -1, 173: 1, 309: 1}, {173: -1, 318: -1, 168: 1, 327: 1}, {168: -1, 20: -1, 173: 1, 19: 1}, {173: -1, 20: -1, 168: 1, 21: 1}, {309: -13, 318: 11, 168: 1, 3: 1}, {173: -1, 178: -1, 327: 1, 21: 1}, {173: -1, 327: -1, 178: 1, 318: 1}, {178: -1, 327: -1, 173: 1, 337: 1}, {173: -1, 21: -1, 178: 1, 20: 1}, {178: -1, 21: -1, 173: 1, 22: 1}, {318: -14, 327: 12, 173: 1, 3: 1}, {178: -1, 184: -1, 337: 1, 22: 1}, {178: -1, 337: -1, 184: 1, 327: 1}, {184: -1, 337: -1, 178: 1, 346: 1}, {178: -1, 22: -1, 184: 1, 21: 1}, {184: -1, 22: -1, 178: 1, 23: 1}, {327: -15, 337: 13, 178: 1, 3: 1}, {184: -1, 190: -1, 346: 1, 23: 1}, {184: -1, 346: -1, 190: 1, 337: 1}, {190: -1, 346: -1, 184: 1, 356: 1}, {184: -1, 23: -1, 190: 1, 22: 1}, {190: -1, 23: -1, 184: 1, 25: 1}, {337: -16, 346: 14, 184: 1, 3: 1}, {190: -1, 197: -1, 356: 1, 25: 1}, {190: -1, 356: -1, 197: 1, 346: 1}, {197: -1, 356: -1, 190: 1, 366: 1}, {190: -1, 25: -1, 197: 1, 23: 1}, {197: -1, 25: -1, 190: 1, 26: 1}, {346: -17, 356: 15, 190: 1, 3: 1}, {197: -1, 203: -1, 366: 1, 26: 1}, {197: -1, 366: -1, 203: 1, 356: 1}, {203: -1, 366: -1, 197: 1, 375: 1}, {197: -1, 26: -1, 203: 1, 25: 1}, {203: -1, 26: -1, 197: 1, 27: 1}, {356: -18, 366: 16, 197: 1, 3: 1}, {203: -1, 210: -1, 375: 1, 27: 1}, {203: -1, 375: -1, 210: 1, 366: 1}, {210: -1, 375: -1, 203: 1, 384: 1}, {203: -1, 27: -1, 210: 1, 26: 1}, {210: -1, 27: -1, 203: 1, 29: 1}, {366: -19, 375: 17, 203: 1, 3: 1}, {210: -1, 216: -1, 384: 1, 29: 1}, {210: -1, 384: -1, 216: 1, 375: 1}, {216: -1, 384: -1, 210: 1, 393: 1}, {210: -1, 29: -1, 216: 1, 27: 1}, {216: -1, 29: -1, 210: 1, 30: 1}, {375: -20, 384: 18, 210: 1, 3: 1}, {216: -1, 223: -1, 393: 1, 30: 1}, {216: -1, 393: -1, 223: 1, 384: 1}, {223: -1, 393: -1, 216: 1, 403: 1}, {216: -1, 30: -1, 223: 1, 29: 1}, {223: -1, 30: -1, 216: 1, 31: 1}, {384: -21, 393: 19, 216: 1, 3: 1}, {223: -1, 230: -1, 403: 1, 31: 1}, {223: -1, 403: -1, 230: 1, 393: 1}, {230: -1, 403: -1, 223: 1, 414: 1}, {223: -1, 31: -1, 230: 1, 30: 1}, {230: -1, 31: -1, 223: 1, 32: 1}, {393: -22, 403: 20, 223: 1, 3: 1}, {230: -1, 237: -1, 414: 1, 32: 1}, {230: -1, 414: -1, 237: 1, 403: 1}, {237: -1, 414: -1, 230: 1, 422: 1}, {230: -1, 32: -1, 237: 1, 31: 1}, {237: -1, 32: -1, 230: 1, 33: 1}, {403: -23, 414: 21, 230: 1, 3: 1}, {237: -1, 245: -1, 422: 1, 33: 1}, {237: -1, 422: -1, 245: 1, 414: 1}, {245: -1, 422: -1, 237: 1, 432: 1}, {237: -1, 33: -1, 245: 1, 32: 1}, {245: -1, 33: -1, 237: 1, 34: 1}, {414: -24, 422: 22, 237: 1, 3: 1}, {245: -1, 253: -1, 432: 1, 34: 1}, {245: -1, 432: -1, 253: 1, 422: 1}, {253: -1, 432: -1, 245: 1, 442: 1}, {245: -1, 34: -1, 253: 1, 33: 1}, {253: -1, 34: -1, 245: 1, 36: 1}, {422: -25, 432: 23, 245: 1, 3: 1}, {253: -1, 262: -1, 442: 1, 36: 1}, {253: -1, 442: -1, 262: 1, 432: 1}, {262: -1, 442: -1, 253: 1, 449: 1}, {253: -1, 36: -1, 262: 1, 34: 1}, {262: -1, 36: -1, 253: 1, 37: 1}, {432: -26, 442: 24, 253: 1, 3: 1}, {262: -1, 270: -1, 449: 1, 37: 1}, {262: -1, 449: -1, 270: 1, 442: 1}, {270: -1, 449: -1, 262: 1, 86: 1}, {262: -1, 37: -1, 270: 1, 36: 1}, {270: -1, 37: -1, 262: 1, 38: 1}, {442: -27, 449: 25, 262: 1, 3: 1}, {270: -1, 279: -1, 38: 1, 86: 1}, {270: -1, 38: -1, 279: 1, 37: 1}, {279: -1, 38: -1, 270: 1, 39: 1}, {270: -1, 86: -1, 279: 1, 449: 1}, {279: -2, 270: 1, 288: 1}, {449: -28, 86: 26, 270: 1, 3: 1}, {279: -2, 39: 1, 86: 1}, {279: -1, 39: -1, 288: 1, 38: 1}, {288: -1, 39: -1, 279: 1, 40: 1}, {288: -2, 279: 1, 296: 1}, {288: -3, 296: 1, 40: 1, 86: 1}, {288: -1, 40: -1, 296: 1, 39: 1}, {296: -1, 40: -1, 288: 1, 42: 1}, {296: -2, 288: 1, 305: 1}, {296: -4, 305: 2, 42: 1, 86: 1}, {296: -1, 42: -1, 305: 1, 40: 1}, {305: -1, 42: -1, 296: 1, 43: 1}, {305: -2, 296: 1, 313: 1}, {305: -5, 313: 3, 43: 1, 86: 1}, {305: -1, 43: -1, 313: 1, 42: 1}, {313: -1, 43: -1, 305: 1, 44: 1}, {313: -2, 305: 1, 322: 1}, {313: -6, 322: 4, 44: 1, 86: 1}, {313: -1, 44: -1, 322: 1, 43: 1}, {322: -1, 44: -1, 313: 1, 45: 1}, {322: -2, 313: 1, 331: 1}, {322: -7, 331: 5, 45: 1, 86: 1}, {322: -1, 45: -1, 331: 1, 44: 1}, {331: -1, 45: -1, 322: 1, 47: 1}, {331: -2, 322: 1, 341: 1}, {331: -8, 341: 6, 47: 1, 86: 1}, {331: -1, 47: -1, 341: 1, 45: 1}, {341: -1, 47: -1, 331: 1, 48: 1}, {341: -2, 331: 1, 350: 1}, {341: -9, 350: 7, 48: 1, 86: 1}, {341: -1, 48: -1, 350: 1, 47: 1}, {350: -1, 48: -1, 341: 1, 49: 1}, {350: -2, 341: 1, 360: 1}, {350: -10, 360: 8, 49: 1, 86: 1}, {350: -1, 49: -1, 360: 1, 48: 1}, {360: -1, 49: -1, 350: 1, 50: 1}, {360: -2, 350: 1, 370: 1}, {360: -11, 370: 9, 50: 1, 86: 1}, {360: -1, 50: -1, 370: 1, 49: 1}, {370: -1, 50: -1, 360: 1, 51: 1}, {370: -2, 360: 1, 379: 1}, {370: -12, 379: 10, 51: 1, 86: 1}, {370: -1, 51: -1, 379: 1, 50: 1}, {379: -1, 51: -1, 370: 1, 52: 1}, {379: -2, 370: 1, 388: 1}, {379: -13, 388: 11, 52: 1, 86: 1}, {379: -1, 52: -1, 388: 1, 51: 1}, {388: -1, 52: -1, 379: 1, 54: 1}, {388: -2, 379: 1, 397: 1}, {388: -14, 397: 12, 54: 1, 86: 1}, {388: -1, 54: -1, 397: 1, 52: 1}, {397: -1, 54: -1, 388: 1, 55: 1}, {397: -2, 388: 1, 407: 1}, {397: -15, 407: 13, 55: 1, 86: 1}, {397: -1, 55: -1, 407: 1, 54: 1}, {407: -1, 55: -1, 397: 1, 56: 1}, {407: -2, 397: 1, 418: 1}, {407: -16, 418: 14, 56: 1, 86: 1}, {407: -1, 56: -1, 418: 1, 55: 1}, {418: -1, 56: -1, 407: 1, 58: 1}, {418: -2, 407: 1, 426: 1}, {418: -17, 426: 15, 58: 1, 86: 1}, {418: -1, 58: -1, 426: 1, 56: 1}, {426: -1, 58: -1, 418: 1, 59: 1}, {426: -2, 418: 1, 436: 1}, {426: -18, 436: 16, 59: 1, 86: 1}, {426: -1, 59: -1, 436: 1, 58: 1}, {436: -1, 59: -1, 426: 1, 60: 1}, {436: -2, 426: 1, 446: 1}, {436: -19, 446: 17, 60: 1, 86: 1}, {436: -1, 60: -1, 446: 1, 59: 1}, {446: -1, 60: -1, 436: 1, 61: 1}, {446: -2, 436: 1, 453: 1}, {446: -20, 453: 18, 61: 1, 86: 1}, {446: -1, 61: -1, 453: 1, 60: 1}, {453: -1, 61: -1, 446: 1, 62: 1}, {453: -2, 446: 1, 459: 1}, {453: -21, 459: 19, 62: 1, 86: 1}, {453: -1, 62: -1, 459: 1, 61: 1}, {459: -1, 62: -1, 453: 1, 63: 1}, {459: -2, 453: 1, 467: 1}, {459: -22, 467: 20, 63: 1, 86: 1}, {459: -1, 63: -1, 467: 1, 62: 1}, {467: -1, 63: -1, 459: 1, 64: 1}, {467: -2, 459: 1, 472: 1}, {467: -23, 472: 21, 64: 1, 86: 1}, {467: -1, 64: -1, 472: 1, 63: 1}, {472: -1, 64: -1, 467: 1, 65: 1}, {472: -2, 467: 1, 477: 1}, {472: -24, 477: 22, 65: 1, 86: 1}, {472: -1, 65: -1, 477: 1, 64: 1}, {477: -1, 65: -1, 472: 1, 66: 1}, {477: -2, 472: 1, 482: 1}, {477: -25, 482: 23, 66: 1, 86: 1}, {477: -1, 66: -1, 482: 1, 65: 1}, {482: -1, 66: -1, 477: 1, 68: 1}, {482: -2, 477: 1, 485: 1}, {482: -26, 485: 24, 68: 1, 86: 1}, {482: -1, 68: -1, 485: 1, 66: 1}, {485: -1, 68: -1, 482: 1, 69: 1}, {485: -2, 482: 1, 488: 1}, {485: -27, 488: 25, 69: 1, 86: 1}, {485: -1, 69: -1, 488: 1, 68: 1}, {488: -1, 69: -1, 485: 1, 70: 1}, {488: -2, 485: 1, 97: 1}, {488: -1, 70: -1, 69: 1, 97: 1}, {488: -28, 97: 26, 70: 1, 86: 1}, {70: -1, 97: -1, 488: 1, 71: 1}, {219: -2, 226: 1, 53: 1}, {226: -2, 219: 1, 233: 1}, {233: -2, 226: 1, 241: 1}, {241: -2, 233: 1, 249: 1}, {249: -2, 241: 1, 258: 1}, {258: -2, 249: 1, 266: 1}, {266: -2, 258: 1, 275: 1}, {275: -2, 266: 1, 284: 1}, {284: -2, 275: 1, 292: 1}, {292: -2, 284: 1, 301: 1}, {301: -2, 292: 1, 309: 1}, {309: -2, 301: 1, 318: 1}, {318: -2, 309: 1, 327: 1}, {327: -2, 318: 1, 337: 1}, {337: -2, 327: 1, 346: 1}, {346: -2, 337: 1, 356: 1}, {356: -2, 346: 1, 366: 1}, {366: -2, 356: 1, 375: 1}, {375: -2, 366: 1, 384: 1}, {384: -2, 375: 1, 393: 1}, {393: -2, 384: 1, 403: 1}, {403: -2, 393: 1, 414: 1}, {414: -2, 403: 1, 422: 1}, {422: -2, 414: 1, 432: 1}, {432: -2, 422: 1, 442: 1}, {442: -2, 432: 1, 449: 1}, {449: -2, 442: 1, 86: 1}, {106: -2, 5: 1, 105: 1}, {71: -2, 70: 1, 72: 1}, {72: -2, 71: 1, 73: 1}, {73: -2, 72: 1, 74: 1}, {74: -2, 73: 1, 75: 1}, {75: -2, 74: 1, 76: 1}, {76: -2, 75: 1, 77: 1}, {77: -2, 76: 1, 78: 1}, {78: -2, 77: 1, 79: 1}, {79: -2, 78: 1, 81: 1}, {81: -2, 79: 1, 82: 1}, {82: -2, 81: 1, 83: 1}, {83: -2, 82: 1, 85: 1}, {85: -2, 83: 1, 87: 1}, {87: -2, 85: 1, 88: 1}, {88: -2, 87: 1, 90: 1}, {90: -2, 88: 1, 91: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {107: -1, 116: -1, 108: 1, 24: 1}, {107: -1, 108: -1, 116: 1, 7: 1}, {116: -1, 108: -1, 107: 1, 118: 1}, {107: -1, 24: -1, 116: 1, 14: 1}, {116: -1, 24: -1, 107: 1, 35: 1}, {107: -1, 7: -1, 108: 1, 6: 1}, {108: -1, 7: -1, 107: 1, 8: 1}, {107: -1, 14: -1, 24: 1, 6: 1}, {107: -1, 6: -1, 14: 1, 7: 1}, {14: -1, 6: -1, 107: 1, 1: 1}, {116: -1, 140: -1, 118: 1, 35: 1}, {116: -1, 118: -1, 140: 1, 108: 1}, {140: -1, 118: -1, 116: 1, 144: 1}, {116: -1, 35: -1, 140: 1, 24: 1}, {140: -1, 35: -1, 116: 1, 46: 1}, {108: -1, 118: -1, 116: 1, 109: 1}, {140: -1, 181: -1, 144: 1, 46: 1}, {140: -1, 144: -1, 181: 1, 118: 1}, {181: -1, 144: -1, 140: 1, 187: 1}, {140: -1, 46: -1, 181: 1, 35: 1}, {181: -1, 46: -1, 140: 1, 57: 1}, {118: -1, 144: -1, 140: 1, 120: 1}, {181: -1, 240: -1, 187: 1, 57: 1}, {181: -1, 187: -1, 240: 1, 144: 1}, {240: -1, 187: -1, 181: 1, 248: 1}, {181: -1, 57: -1, 240: 1, 46: 1}, {240: -1, 57: -1, 181: 1, 67: 1}, {144: -1, 187: -1, 181: 1, 149: 1}, {240: -1, 316: -1, 248: 1, 67: 1}, {240: -1, 248: -1, 316: 1, 187: 1}, {316: -1, 248: -1, 240: 1, 325: 1}, {240: -1, 67: -1, 316: 1, 57: 1}, {316: -1, 67: -1, 240: 1, 2: 1}, {187: -1, 248: -1, 240: 1, 194: 1}, {316: -2, 248: 1, 2: 1}, {248: -1, 325: -1, 316: 1, 257: 1}, {316: -2, 325: 1, 67: 1}, {325: -2, 316: 1, 335: 1}, {108: -1, 109: -1, 118: 1, 8: 1}, {118: -1, 109: -1, 108: 1, 120: 1}, {108: -1, 8: -1, 109: 1, 7: 1}, {109: -1, 8: -1, 108: 1, 9: 1}, {118: -1, 120: -1, 144: 1, 109: 1}, {144: -1, 120: -1, 118: 1, 149: 1}, {109: -1, 120: -1, 118: 1, 110: 1}, {144: -1, 149: -1, 187: 1, 120: 1}, {187: -1, 149: -1, 144: 1, 194: 1}, {120: -1, 149: -1, 144: 1, 123: 1}, {187: -1, 194: -1, 248: 1, 149: 1}, {248: -1, 194: -1, 187: 1, 257: 1}, {149: -1, 194: -1, 187: 1, 153: 1}, {248: -1, 257: -1, 325: 1, 194: 1}, {325: -1, 257: -1, 248: 1, 335: 1}, {194: -1, 257: -1, 248: 1, 200: 1}, {325: -3, 335: 1, 257: 1, 2: 1}, {257: -1, 335: -1, 325: 1, 265: 1}, {335: -2, 325: 1, 344: 1}, {109: -1, 110: -1, 120: 1, 9: 1}, {120: -1, 110: -1, 109: 1, 123: 1}, {109: -1, 9: -1, 110: 1, 8: 1}, {110: -1, 9: -1, 109: 1, 10: 1}, {120: -1, 123: -1, 149: 1, 110: 1}, {149: -1, 123: -1, 120: 1, 153: 1}, {110: -1, 123: -1, 120: 1, 111: 1}, {149: -1, 153: -1, 194: 1, 123: 1}, {194: -1, 153: -1, 149: 1, 200: 1}, {123: -1, 153: -1, 149: 1, 126: 1}, {194: -1, 200: -1, 257: 1, 153: 1}, {257: -1, 200: -1, 194: 1, 265: 1}, {153: -1, 200: -1, 194: 1, 157: 1}, {257: -1, 265: -1, 335: 1, 200: 1}, {335: -1, 265: -1, 257: 1, 344: 1}, {200: -1, 265: -1, 257: 1, 207: 1}, {335: -4, 344: 2, 265: 1, 2: 1}, {265: -1, 344: -1, 335: 1, 274: 1}, {344: -2, 335: 1, 354: 1}, {110: -1, 111: -1, 123: 1, 10: 1}, {123: -1, 111: -1, 110: 1, 126: 1}, {110: -1, 10: -1, 111: 1, 9: 1}, {111: -1, 10: -1, 110: 1, 11: 1}, {123: -1, 126: -1, 153: 1, 111: 1}, {153: -1, 126: -1, 123: 1, 157: 1}, {111: -1, 126: -1, 123: 1, 112: 1}, {153: -1, 157: -1, 200: 1, 126: 1}, {200: -1, 157: -1, 153: 1, 207: 1}, {126: -1, 157: -1, 153: 1, 129: 1}, {200: -1, 207: -1, 265: 1, 157: 1}, {265: -1, 207: -1, 200: 1, 274: 1}, {157: -1, 207: -1, 200: 1, 162: 1}, {265: -1, 274: -1, 344: 1, 207: 1}, {344: -1, 274: -1, 265: 1, 354: 1}, {207: -1, 274: -1, 265: 1, 213: 1}, {344: -5, 354: 3, 274: 1, 2: 1}, {274: -1, 354: -1, 344: 1, 283: 1}, {354: -2, 344: 1, 364: 1}, {111: -1, 112: -1, 126: 1, 11: 1}, {126: -1, 112: -1, 111: 1, 129: 1}, {111: -1, 11: -1, 112: 1, 10: 1}, {112: -1, 11: -1, 111: 1, 12: 1}, {126: -1, 129: -1, 157: 1, 112: 1}, {157: -1, 129: -1, 126: 1, 162: 1}, {112: -1, 129: -1, 126: 1, 113: 1}, {157: -1, 162: -1, 207: 1, 129: 1}, {207: -1, 162: -1, 157: 1, 213: 1}, {129: -1, 162: -1, 157: 1, 132: 1}, {207: -1, 213: -1, 274: 1, 162: 1}, {274: -1, 213: -1, 207: 1, 283: 1}, {162: -1, 213: -1, 207: 1, 167: 1}, {274: -1, 283: -1, 354: 1, 213: 1}, {354: -1, 283: -1, 274: 1, 364: 1}, {213: -1, 283: -1, 274: 1, 220: 1}, {354: -6, 364: 4, 283: 1, 2: 1}, {283: -1, 364: -1, 354: 1, 291: 1}, {364: -2, 354: 1, 373: 1}, {112: -1, 113: -1, 129: 1, 12: 1}, {129: -1, 113: -1, 112: 1, 132: 1}, {112: -1, 12: -1, 113: 1, 11: 1}, {113: -1, 12: -1, 112: 1, 13: 1}, {129: -1, 132: -1, 162: 1, 113: 1}, {162: -1, 132: -1, 129: 1, 167: 1}, {113: -1, 132: -1, 129: 1, 114: 1}, {162: -1, 167: -1, 213: 1, 132: 1}, {213: -1, 167: -1, 162: 1, 220: 1}, {132: -1, 167: -1, 162: 1, 135: 1}, {213: -1, 220: -1, 283: 1, 167: 1}, {283: -1, 220: -1, 213: 1, 291: 1}, {167: -1, 220: -1, 213: 1, 172: 1}, {283: -1, 291: -1, 364: 1, 220: 1}, {364: -1, 291: -1, 283: 1, 373: 1}, {220: -1, 291: -1, 283: 1, 227: 1}, {364: -7, 373: 5, 291: 1, 2: 1}, {291: -1, 373: -1, 364: 1, 300: 1}, {373: -2, 364: 1, 382: 1}, {113: -1, 114: -1, 132: 1, 13: 1}, {132: -1, 114: -1, 113: 1, 135: 1}, {113: -1, 13: -1, 114: 1, 12: 1}, {114: -1, 13: -1, 113: 1, 15: 1}, {132: -1, 135: -1, 167: 1, 114: 1}, {167: -1, 135: -1, 132: 1, 172: 1}, {114: -1, 135: -1, 132: 1, 115: 1}, {167: -1, 172: -1, 220: 1, 135: 1}, {220: -1, 172: -1, 167: 1, 227: 1}, {135: -1, 172: -1, 167: 1, 138: 1}, {220: -1, 227: -1, 291: 1, 172: 1}, {291: -1, 227: -1, 220: 1, 300: 1}, {172: -1, 227: -1, 220: 1, 177: 1}, {291: -1, 300: -1, 373: 1, 227: 1}, {373: -1, 300: -1, 291: 1, 382: 1}, {227: -1, 300: -1, 291: 1, 234: 1}, {373: -8, 382: 6, 300: 1, 2: 1}, {300: -1, 382: -1, 373: 1, 308: 1}, {382: -2, 373: 1, 391: 1}, {114: -1, 115: -1, 135: 1, 15: 1}, {135: -1, 115: -1, 114: 1, 138: 1}, {114: -1, 15: -1, 115: 1, 13: 1}, {115: -1, 15: -1, 114: 1, 16: 1}, {135: -1, 138: -1, 172: 1, 115: 1}, {172: -1, 138: -1, 135: 1, 177: 1}, {115: -1, 138: -1, 135: 1, 117: 1}, {172: -1, 177: -1, 227: 1, 138: 1}, {227: -1, 177: -1, 172: 1, 234: 1}, {138: -1, 177: -1, 172: 1, 142: 1}, {227: -1, 234: -1, 300: 1, 177: 1}, {300: -1, 234: -1, 227: 1, 308: 1}, {177: -1, 234: -1, 227: 1, 183: 1}, {300: -1, 308: -1, 382: 1, 234: 1}, {382: -1, 308: -1, 300: 1, 391: 1}, {234: -1, 308: -1, 300: 1, 242: 1}, {382: -9, 391: 7, 308: 1, 2: 1}, {308: -1, 391: -1, 382: 1, 317: 1}, {391: -2, 382: 1, 401: 1}, {115: -1, 117: -1, 138: 1, 16: 1}, {138: -1, 117: -1, 115: 1, 142: 1}, {115: -1, 16: -1, 117: 1, 15: 1}, {117: -1, 16: -1, 115: 1, 17: 1}, {138: -1, 142: -1, 177: 1, 117: 1}, {177: -1, 142: -1, 138: 1, 183: 1}, {117: -1, 142: -1, 138: 1, 119: 1}, {177: -1, 183: -1, 234: 1, 142: 1}, {234: -1, 183: -1, 177: 1, 242: 1}, {142: -1, 183: -1, 177: 1, 146: 1}, {234: -1, 242: -1, 308: 1, 183: 1}, {308: -1, 242: -1, 234: 1, 317: 1}, {183: -1, 242: -1, 234: 1, 189: 1}, {308: -1, 317: -1, 391: 1, 242: 1}, {391: -1, 317: -1, 308: 1, 401: 1}, {242: -1, 317: -1, 308: 1, 250: 1}, {391: -10, 401: 8, 317: 1, 2: 1}, {317: -1, 401: -1, 391: 1, 326: 1}, {401: -2, 391: 1, 412: 1}, {117: -1, 119: -1, 142: 1, 17: 1}, {142: -1, 119: -1, 117: 1, 146: 1}, {117: -1, 17: -1, 119: 1, 16: 1}, {119: -1, 17: -1, 117: 1, 18: 1}, {142: -1, 146: -1, 183: 1, 119: 1}, {183: -1, 146: -1, 142: 1, 189: 1}, {119: -1, 146: -1, 142: 1, 121: 1}, {183: -1, 189: -1, 242: 1, 146: 1}, {242: -1, 189: -1, 183: 1, 250: 1}, {146: -1, 189: -1, 183: 1, 151: 1}, {242: -1, 250: -1, 317: 1, 189: 1}, {317: -1, 250: -1, 242: 1, 326: 1}, {189: -1, 250: -1, 242: 1, 196: 1}, {317: -1, 326: -1, 401: 1, 250: 1}, {401: -1, 326: -1, 317: 1, 412: 1}, {250: -1, 326: -1, 317: 1, 259: 1}, {401: -11, 412: 9, 326: 1, 2: 1}, {326: -1, 412: -1, 401: 1, 336: 1}, {412: -2, 401: 1, 80: 1}, {119: -1, 121: -1, 146: 1, 18: 1}, {146: -1, 121: -1, 119: 1, 151: 1}, {119: -1, 18: -1, 121: 1, 17: 1}, {121: -1, 18: -1, 119: 1, 19: 1}, {146: -1, 151: -1, 189: 1, 121: 1}, {189: -1, 151: -1, 146: 1, 196: 1}, {121: -1, 151: -1, 146: 1, 124: 1}, {189: -1, 196: -1, 250: 1, 151: 1}, {250: -1, 196: -1, 189: 1, 259: 1}, {151: -1, 196: -1, 189: 1, 155: 1}, {250: -1, 259: -1, 326: 1, 196: 1}, {326: -1, 259: -1, 250: 1, 336: 1}, {196: -1, 259: -1, 250: 1, 202: 1}, {326: -1, 336: -1, 412: 1, 259: 1}, {412: -1, 336: -1, 326: 1, 80: 1}, {259: -1, 336: -1, 326: 1, 267: 1}, {412: -12, 80: 10, 336: 1, 2: 1}, {336: -1, 80: -1, 412: 1, 345: 1}, {121: -1, 124: -1, 151: 1, 19: 1}, {151: -1, 124: -1, 121: 1, 155: 1}, {121: -1, 19: -1, 124: 1, 18: 1}, {124: -1, 19: -1, 121: 1, 20: 1}, {151: -1, 155: -1, 196: 1, 124: 1}, {196: -1, 155: -1, 151: 1, 202: 1}, {124: -1, 155: -1, 151: 1, 127: 1}, {196: -1, 202: -1, 259: 1, 155: 1}, {259: -1, 202: -1, 196: 1, 267: 1}, {155: -1, 202: -1, 196: 1, 159: 1}, {259: -1, 267: -1, 336: 1, 202: 1}, {336: -1, 267: -1, 259: 1, 345: 1}, {202: -1, 267: -1, 259: 1, 209: 1}, {336: -1, 345: -1, 267: 1, 80: 1}, {267: -1, 345: -1, 336: 1, 276: 1}, {345: -2, 336: 1, 355: 1}, {124: -1, 127: -1, 155: 1, 20: 1}, {155: -1, 127: -1, 124: 1, 159: 1}, {124: -1, 20: -1, 127: 1, 19: 1}, {127: -1, 20: -1, 124: 1, 21: 1}, {155: -1, 159: -1, 202: 1, 127: 1}, {202: -1, 159: -1, 155: 1, 209: 1}, {127: -1, 159: -1, 155: 1, 130: 1}, {202: -1, 209: -1, 267: 1, 159: 1}, {267: -1, 209: -1, 202: 1, 276: 1}, {159: -1, 209: -1, 202: 1, 164: 1}, {267: -1, 276: -1, 345: 1, 209: 1}, {345: -1, 276: -1, 267: 1, 355: 1}, {209: -1, 276: -1, 267: 1, 215: 1}, {345: -2, 276: 1, 80: 1}, {276: -1, 355: -1, 345: 1, 285: 1}, {355: -2, 345: 1, 365: 1}, {127: -1, 130: -1, 159: 1, 21: 1}, {159: -1, 130: -1, 127: 1, 164: 1}, {127: -1, 21: -1, 130: 1, 20: 1}, {130: -1, 21: -1, 127: 1, 22: 1}, {159: -1, 164: -1, 209: 1, 130: 1}, {209: -1, 164: -1, 159: 1, 215: 1}, {130: -1, 164: -1, 159: 1, 133: 1}, {209: -1, 215: -1, 276: 1, 164: 1}, {276: -1, 215: -1, 209: 1, 285: 1}, {164: -1, 215: -1, 209: 1, 169: 1}, {276: -1, 285: -1, 355: 1, 215: 1}, {355: -1, 285: -1, 276: 1, 365: 1}, {215: -1, 285: -1, 276: 1, 222: 1}, {355: -3, 365: 1, 285: 1, 80: 1}, {285: -1, 365: -1, 355: 1, 293: 1}, {365: -2, 355: 1, 374: 1}, {130: -1, 133: -1, 164: 1, 22: 1}, {164: -1, 133: -1, 130: 1, 169: 1}, {130: -1, 22: -1, 133: 1, 21: 1}, {133: -1, 22: -1, 130: 1, 23: 1}, {164: -1, 169: -1, 215: 1, 133: 1}, {215: -1, 169: -1, 164: 1, 222: 1}, {133: -1, 169: -1, 164: 1, 136: 1}, {215: -1, 222: -1, 285: 1, 169: 1}, {285: -1, 222: -1, 215: 1, 293: 1}, {169: -1, 222: -1, 215: 1, 174: 1}, {285: -1, 293: -1, 365: 1, 222: 1}, {365: -1, 293: -1, 285: 1, 374: 1}, {222: -1, 293: -1, 285: 1, 229: 1}, {365: -4, 374: 2, 293: 1, 80: 1}, {293: -1, 374: -1, 365: 1, 302: 1}, {374: -2, 365: 1, 383: 1}, {133: -1, 136: -1, 169: 1, 23: 1}, {169: -1, 136: -1, 133: 1, 174: 1}, {133: -1, 23: -1, 136: 1, 22: 1}, {136: -1, 23: -1, 133: 1, 25: 1}, {169: -1, 174: -1, 222: 1, 136: 1}, {222: -1, 174: -1, 169: 1, 229: 1}, {136: -1, 174: -1, 169: 1, 139: 1}, {222: -1, 229: -1, 293: 1, 174: 1}, {293: -1, 229: -1, 222: 1, 302: 1}, {174: -1, 229: -1, 222: 1, 179: 1}, {293: -1, 302: -1, 374: 1, 229: 1}, {374: -1, 302: -1, 293: 1, 383: 1}, {229: -1, 302: -1, 293: 1, 236: 1}, {374: -5, 383: 3, 302: 1, 80: 1}, {302: -1, 383: -1, 374: 1, 310: 1}, {383: -2, 374: 1, 392: 1}, {136: -1, 139: -1, 174: 1, 25: 1}, {174: -1, 139: -1, 136: 1, 179: 1}, {136: -1, 25: -1, 139: 1, 23: 1}, {139: -1, 25: -1, 136: 1, 26: 1}, {174: -1, 179: -1, 229: 1, 139: 1}, {229: -1, 179: -1, 174: 1, 236: 1}, {139: -1, 179: -1, 174: 1, 143: 1}, {229: -1, 236: -1, 302: 1, 179: 1}, {302: -1, 236: -1, 229: 1, 310: 1}, {179: -1, 236: -1, 229: 1, 185: 1}, {302: -1, 310: -1, 383: 1, 236: 1}, {383: -1, 310: -1, 302: 1, 392: 1}, {236: -1, 310: -1, 302: 1, 244: 1}, {383: -6, 392: 4, 310: 1, 80: 1}, {310: -1, 392: -1, 383: 1, 319: 1}, {392: -2, 383: 1, 402: 1}, {139: -1, 143: -1, 179: 1, 26: 1}, {179: -1, 143: -1, 139: 1, 185: 1}, {139: -1, 26: -1, 143: 1, 25: 1}, {143: -1, 26: -1, 139: 1, 27: 1}, {179: -1, 185: -1, 236: 1, 143: 1}, {236: -1, 185: -1, 179: 1, 244: 1}, {143: -1, 185: -1, 179: 1, 147: 1}, {236: -1, 244: -1, 310: 1, 185: 1}, {310: -1, 244: -1, 236: 1, 319: 1}, {185: -1, 244: -1, 236: 1, 191: 1}, {310: -1, 319: -1, 392: 1, 244: 1}, {392: -1, 319: -1, 310: 1, 402: 1}, {244: -1, 319: -1, 310: 1, 252: 1}, {392: -7, 402: 5, 319: 1, 80: 1}, {319: -1, 402: -1, 392: 1, 328: 1}, {402: -2, 392: 1, 413: 1}, {143: -1, 147: -1, 185: 1, 27: 1}, {185: -1, 147: -1, 143: 1, 191: 1}, {143: -1, 27: -1, 147: 1, 26: 1}, {147: -1, 27: -1, 143: 1, 29: 1}, {185: -1, 191: -1, 244: 1, 147: 1}, {244: -1, 191: -1, 185: 1, 252: 1}, {147: -1, 191: -1, 185: 1, 152: 1}, {244: -1, 252: -1, 319: 1, 191: 1}, {319: -1, 252: -1, 244: 1, 328: 1}, {191: -1, 252: -1, 244: 1, 198: 1}, {319: -1, 328: -1, 402: 1, 252: 1}, {402: -1, 328: -1, 319: 1, 413: 1}, {252: -1, 328: -1, 319: 1, 261: 1}, {402: -8, 413: 6, 328: 1, 80: 1}, {328: -1, 413: -1, 402: 1, 338: 1}, {413: -2, 402: 1, 421: 1}, {147: -1, 152: -1, 191: 1, 29: 1}, {191: -1, 152: -1, 147: 1, 198: 1}, {147: -1, 29: -1, 152: 1, 27: 1}, {152: -1, 29: -1, 147: 1, 30: 1}, {191: -1, 198: -1, 252: 1, 152: 1}, {252: -1, 198: -1, 191: 1, 261: 1}, {152: -1, 198: -1, 191: 1, 156: 1}, {252: -1, 261: -1, 328: 1, 198: 1}, {328: -1, 261: -1, 252: 1, 338: 1}, {198: -1, 261: -1, 252: 1, 204: 1}, {328: -1, 338: -1, 413: 1, 261: 1}, {413: -1, 338: -1, 328: 1, 421: 1}, {261: -1, 338: -1, 328: 1, 269: 1}, {413: -9, 421: 7, 338: 1, 80: 1}, {338: -1, 421: -1, 413: 1, 347: 1}, {421: -2, 413: 1, 431: 1}, {152: -1, 156: -1, 198: 1, 30: 1}, {198: -1, 156: -1, 152: 1, 204: 1}, {152: -1, 30: -1, 156: 1, 29: 1}, {156: -1, 30: -1, 152: 1, 31: 1}, {198: -1, 204: -1, 261: 1, 156: 1}, {261: -1, 204: -1, 198: 1, 269: 1}, {156: -1, 204: -1, 198: 1, 160: 1}, {261: -1, 269: -1, 338: 1, 204: 1}, {338: -1, 269: -1, 261: 1, 347: 1}, {204: -1, 269: -1, 261: 1, 211: 1}, {338: -1, 347: -1, 421: 1, 269: 1}, {421: -1, 347: -1, 338: 1, 431: 1}, {269: -1, 347: -1, 338: 1, 278: 1}, {421: -10, 431: 8, 347: 1, 80: 1}, {347: -1, 431: -1, 421: 1, 357: 1}, {431: -2, 421: 1, 441: 1}, {156: -1, 160: -1, 204: 1, 31: 1}, {204: -1, 160: -1, 156: 1, 211: 1}, {156: -1, 31: -1, 160: 1, 30: 1}, {160: -1, 31: -1, 156: 1, 32: 1}, {204: -1, 211: -1, 269: 1, 160: 1}, {269: -1, 211: -1, 204: 1, 278: 1}, {160: -1, 211: -1, 204: 1, 165: 1}, {269: -1, 278: -1, 347: 1, 211: 1}, {347: -1, 278: -1, 269: 1, 357: 1}, {211: -1, 278: -1, 269: 1, 217: 1}, {347: -1, 357: -1, 431: 1, 278: 1}, {431: -1, 357: -1, 347: 1, 441: 1}, {278: -1, 357: -1, 347: 1, 287: 1}, {431: -11, 441: 9, 357: 1, 80: 1}, {357: -1, 441: -1, 431: 1, 367: 1}, {441: -2, 431: 1, 84: 1}, {160: -1, 165: -1, 211: 1, 32: 1}, {211: -1, 165: -1, 160: 1, 217: 1}, {160: -1, 32: -1, 165: 1, 31: 1}, {165: -1, 32: -1, 160: 1, 33: 1}, {211: -1, 217: -1, 278: 1, 165: 1}, {278: -1, 217: -1, 211: 1, 287: 1}, {165: -1, 217: -1, 211: 1, 170: 1}, {278: -1, 287: -1, 357: 1, 217: 1}, {357: -1, 287: -1, 278: 1, 367: 1}, {217: -1, 287: -1, 278: 1, 224: 1}, {357: -1, 367: -1, 441: 1, 287: 1}, {441: -1, 367: -1, 357: 1, 84: 1}, {287: -1, 367: -1, 357: 1, 295: 1}, {441: -12, 84: 10, 367: 1, 80: 1}, {367: -1, 84: -1, 441: 1, 376: 1}, {165: -1, 170: -1, 217: 1, 33: 1}, {217: -1, 170: -1, 165: 1, 224: 1}, {165: -1, 33: -1, 170: 1, 32: 1}, {170: -1, 33: -1, 165: 1, 34: 1}, {217: -1, 224: -1, 287: 1, 170: 1}, {287: -1, 224: -1, 217: 1, 295: 1}, {170: -1, 224: -1, 217: 1, 175: 1}, {287: -1, 295: -1, 367: 1, 224: 1}, {367: -1, 295: -1, 287: 1, 376: 1}, {224: -1, 295: -1, 287: 1, 231: 1}, {367: -1, 376: -1, 295: 1, 84: 1}, {295: -1, 376: -1, 367: 1, 304: 1}, {376: -2, 367: 1, 385: 1}, {170: -1, 175: -1, 224: 1, 34: 1}, {224: -1, 175: -1, 170: 1, 231: 1}, {170: -1, 34: -1, 175: 1, 33: 1}, {175: -1, 34: -1, 170: 1, 36: 1}, {224: -1, 231: -1, 295: 1, 175: 1}, {295: -1, 231: -1, 224: 1, 304: 1}, {175: -1, 231: -1, 224: 1, 180: 1}, {295: -1, 304: -1, 376: 1, 231: 1}, {376: -1, 304: -1, 295: 1, 385: 1}, {231: -1, 304: -1, 295: 1, 238: 1}, {376: -2, 304: 1, 84: 1}, {304: -1, 385: -1, 376: 1, 312: 1}, {385: -2, 376: 1, 394: 1}, {175: -1, 180: -1, 231: 1, 36: 1}, {231: -1, 180: -1, 175: 1, 238: 1}, {175: -1, 36: -1, 180: 1, 34: 1}, {180: -1, 36: -1, 175: 1, 37: 1}, {231: -1, 238: -1, 304: 1, 180: 1}, {304: -1, 238: -1, 231: 1, 312: 1}, {180: -1, 238: -1, 231: 1, 186: 1}, {304: -1, 312: -1, 385: 1, 238: 1}, {385: -1, 312: -1, 304: 1, 394: 1}, {238: -1, 312: -1, 304: 1, 246: 1}, {385: -3, 394: 1, 312: 1, 84: 1}, {312: -1, 394: -1, 385: 1, 321: 1}, {394: -2, 385: 1, 404: 1}, {180: -1, 186: -1, 238: 1, 37: 1}, {238: -1, 186: -1, 180: 1, 246: 1}, {180: -1, 37: -1, 186: 1, 36: 1}, {186: -1, 37: -1, 180: 1, 38: 1}, {238: -1, 246: -1, 312: 1, 186: 1}, {312: -1, 246: -1, 238: 1, 321: 1}, {186: -1, 246: -1, 238: 1, 192: 1}, {312: -1, 321: -1, 394: 1, 246: 1}, {394: -1, 321: -1, 312: 1, 404: 1}, {246: -1, 321: -1, 312: 1, 254: 1}, {394: -4, 404: 2, 321: 1, 84: 1}, {321: -1, 404: -1, 394: 1, 330: 1}, {404: -2, 394: 1, 415: 1}, {186: -1, 192: -1, 246: 1, 38: 1}, {246: -1, 192: -1, 186: 1, 254: 1}, {186: -1, 38: -1, 192: 1, 37: 1}, {192: -1, 38: -1, 186: 1, 39: 1}, {246: -1, 254: -1, 321: 1, 192: 1}, {321: -1, 254: -1, 246: 1, 330: 1}, {192: -1, 254: -1, 246: 1, 199: 1}, {321: -1, 330: -1, 404: 1, 254: 1}, {404: -1, 330: -1, 321: 1, 415: 1}, {254: -1, 330: -1, 321: 1, 263: 1}, {404: -5, 415: 3, 330: 1, 84: 1}, {330: -1, 415: -1, 404: 1, 340: 1}, {415: -2, 404: 1, 423: 1}, {192: -1, 199: -1, 254: 1, 39: 1}, {254: -1, 199: -1, 192: 1, 263: 1}, {192: -1, 39: -1, 199: 1, 38: 1}, {199: -1, 39: -1, 192: 1, 40: 1}, {254: -1, 263: -1, 330: 1, 199: 1}, {330: -1, 263: -1, 254: 1, 340: 1}, {199: -1, 263: -1, 254: 1, 205: 1}, {330: -1, 340: -1, 415: 1, 263: 1}, {415: -1, 340: -1, 330: 1, 423: 1}, {263: -1, 340: -1, 330: 1, 271: 1}, {415: -6, 423: 4, 340: 1, 84: 1}, {340: -1, 423: -1, 415: 1, 349: 1}, {423: -2, 415: 1, 433: 1}, {199: -1, 205: -1, 263: 1, 40: 1}, {263: -1, 205: -1, 199: 1, 271: 1}, {199: -1, 40: -1, 205: 1, 39: 1}, {205: -1, 40: -1, 199: 1, 42: 1}, {263: -1, 271: -1, 340: 1, 205: 1}, {340: -1, 271: -1, 263: 1, 349: 1}, {205: -1, 271: -1, 263: 1, 212: 1}, {340: -1, 349: -1, 423: 1, 271: 1}, {423: -1, 349: -1, 340: 1, 433: 1}, {271: -1, 349: -1, 340: 1, 280: 1}, {423: -7, 433: 5, 349: 1, 84: 1}, {349: -1, 433: -1, 423: 1, 359: 1}, {433: -2, 423: 1, 443: 1}, {205: -1, 212: -1, 271: 1, 42: 1}, {271: -1, 212: -1, 205: 1, 280: 1}, {205: -1, 42: -1, 212: 1, 40: 1}, {212: -1, 42: -1, 205: 1, 43: 1}, {271: -1, 280: -1, 349: 1, 212: 1}, {349: -1, 280: -1, 271: 1, 359: 1}, {212: -1, 280: -1, 271: 1, 218: 1}, {349: -1, 359: -1, 433: 1, 280: 1}, {433: -1, 359: -1, 349: 1, 443: 1}, {280: -1, 359: -1, 349: 1, 289: 1}, {433: -8, 443: 6, 359: 1, 84: 1}, {359: -1, 443: -1, 433: 1, 369: 1}, {443: -2, 433: 1, 450: 1}, {212: -1, 218: -1, 280: 1, 43: 1}, {280: -1, 218: -1, 212: 1, 289: 1}, {212: -1, 43: -1, 218: 1, 42: 1}, {218: -1, 43: -1, 212: 1, 44: 1}, {280: -1, 289: -1, 359: 1, 218: 1}, {359: -1, 289: -1, 280: 1, 369: 1}, {218: -1, 289: -1, 280: 1, 225: 1}, {359: -1, 369: -1, 443: 1, 289: 1}, {443: -1, 369: -1, 359: 1, 450: 1}, {289: -1, 369: -1, 359: 1, 297: 1}, {443: -9, 450: 7, 369: 1, 84: 1}, {369: -1, 450: -1, 443: 1, 378: 1}, {450: -2, 443: 1, 456: 1}, {218: -1, 225: -1, 289: 1, 44: 1}, {289: -1, 225: -1, 218: 1, 297: 1}, {218: -1, 44: -1, 225: 1, 43: 1}, {225: -1, 44: -1, 218: 1, 45: 1}, {289: -1, 297: -1, 369: 1, 225: 1}, {369: -1, 297: -1, 289: 1, 378: 1}, {225: -1, 297: -1, 289: 1, 232: 1}, {369: -1, 378: -1, 450: 1, 297: 1}, {450: -1, 378: -1, 369: 1, 456: 1}, {297: -1, 378: -1, 369: 1, 306: 1}, {450: -10, 456: 8, 378: 1, 84: 1}, {378: -1, 456: -1, 450: 1, 387: 1}, {456: -2, 450: 1, 464: 1}, {225: -1, 232: -1, 297: 1, 45: 1}, {297: -1, 232: -1, 225: 1, 306: 1}, {225: -1, 45: -1, 232: 1, 44: 1}, {232: -1, 45: -1, 225: 1, 47: 1}, {297: -1, 306: -1, 378: 1, 232: 1}, {378: -1, 306: -1, 297: 1, 387: 1}, {232: -1, 306: -1, 297: 1, 239: 1}, {378: -1, 387: -1, 456: 1, 306: 1}, {456: -1, 387: -1, 378: 1, 464: 1}, {306: -1, 387: -1, 378: 1, 314: 1}, {456: -11, 464: 9, 387: 1, 84: 1}, {387: -1, 464: -1, 456: 1, 396: 1}, {464: -2, 456: 1, 89: 1}, {232: -1, 239: -1, 306: 1, 47: 1}, {306: -1, 239: -1, 232: 1, 314: 1}, {232: -1, 47: -1, 239: 1, 45: 1}, {239: -1, 47: -1, 232: 1, 48: 1}, {306: -1, 314: -1, 387: 1, 239: 1}, {387: -1, 314: -1, 306: 1, 396: 1}, {239: -1, 314: -1, 306: 1, 247: 1}, {387: -1, 396: -1, 464: 1, 314: 1}, {464: -1, 396: -1, 387: 1, 89: 1}, {314: -1, 396: -1, 387: 1, 323: 1}, {464: -12, 89: 10, 396: 1, 84: 1}, {396: -1, 89: -1, 464: 1, 406: 1}, {239: -1, 247: -1, 314: 1, 48: 1}, {314: -1, 247: -1, 239: 1, 323: 1}, {239: -1, 48: -1, 247: 1, 47: 1}, {247: -1, 48: -1, 239: 1, 49: 1}, {314: -1, 323: -1, 396: 1, 247: 1}, {396: -1, 323: -1, 314: 1, 406: 1}, {247: -1, 323: -1, 314: 1, 255: 1}, {396: -1, 406: -1, 323: 1, 89: 1}, {323: -1, 406: -1, 396: 1, 332: 1}, {406: -2, 396: 1, 417: 1}, {247: -1, 255: -1, 323: 1, 49: 1}, {323: -1, 255: -1, 247: 1, 332: 1}, {247: -1, 49: -1, 255: 1, 48: 1}, {255: -1, 49: -1, 247: 1, 50: 1}, {323: -1, 332: -1, 406: 1, 255: 1}, {406: -1, 332: -1, 323: 1, 417: 1}, {255: -1, 332: -1, 323: 1, 264: 1}, {406: -2, 332: 1, 89: 1}, {332: -1, 417: -1, 406: 1, 342: 1}, {417: -2, 406: 1, 425: 1}, {255: -1, 264: -1, 332: 1, 50: 1}, {332: -1, 264: -1, 255: 1, 342: 1}, {255: -1, 50: -1, 264: 1, 49: 1}, {264: -1, 50: -1, 255: 1, 51: 1}, {332: -1, 342: -1, 417: 1, 264: 1}, {417: -1, 342: -1, 332: 1, 425: 1}, {264: -1, 342: -1, 332: 1, 272: 1}, {417: -3, 425: 1, 342: 1, 89: 1}, {342: -1, 425: -1, 417: 1, 351: 1}, {425: -2, 417: 1, 435: 1}, {264: -1, 272: -1, 342: 1, 51: 1}, {342: -1, 272: -1, 264: 1, 351: 1}, {264: -1, 51: -1, 272: 1, 50: 1}, {272: -1, 51: -1, 264: 1, 52: 1}, {342: -1, 351: -1, 425: 1, 272: 1}, {425: -1, 351: -1, 342: 1, 435: 1}, {272: -1, 351: -1, 342: 1, 281: 1}, {425: -4, 435: 2, 351: 1, 89: 1}, {351: -1, 435: -1, 425: 1, 361: 1}, {435: -2, 425: 1, 445: 1}, {272: -1, 281: -1, 351: 1, 52: 1}, {351: -1, 281: -1, 272: 1, 361: 1}, {272: -1, 52: -1, 281: 1, 51: 1}, {281: -1, 52: -1, 272: 1, 54: 1}, {351: -1, 361: -1, 435: 1, 281: 1}, {435: -1, 361: -1, 351: 1, 445: 1}, {281: -1, 361: -1, 351: 1, 290: 1}, {435: -5, 445: 3, 361: 1, 89: 1}, {361: -1, 445: -1, 435: 1, 371: 1}, {445: -2, 435: 1, 452: 1}, {281: -1, 290: -1, 361: 1, 54: 1}, {361: -1, 290: -1, 281: 1, 371: 1}, {281: -1, 54: -1, 290: 1, 52: 1}, {290: -1, 54: -1, 281: 1, 55: 1}, {361: -1, 371: -1, 445: 1, 290: 1}, {445: -1, 371: -1, 361: 1, 452: 1}, {290: -1, 371: -1, 361: 1, 298: 1}, {445: -6, 452: 4, 371: 1, 89: 1}, {371: -1, 452: -1, 445: 1, 380: 1}, {452: -2, 445: 1, 458: 1}, {290: -1, 298: -1, 371: 1, 55: 1}, {371: -1, 298: -1, 290: 1, 380: 1}, {290: -1, 55: -1, 298: 1, 54: 1}, {298: -1, 55: -1, 290: 1, 56: 1}, {371: -1, 380: -1, 452: 1, 298: 1}, {452: -1, 380: -1, 371: 1, 458: 1}, {298: -1, 380: -1, 371: 1, 307: 1}, {452: -7, 458: 5, 380: 1, 89: 1}, {380: -1, 458: -1, 452: 1, 389: 1}, {458: -2, 452: 1, 466: 1}, {298: -1, 307: -1, 380: 1, 56: 1}, {380: -1, 307: -1, 298: 1, 389: 1}, {298: -1, 56: -1, 307: 1, 55: 1}, {307: -1, 56: -1, 298: 1, 58: 1}, {380: -1, 389: -1, 458: 1, 307: 1}, {458: -1, 389: -1, 380: 1, 466: 1}, {307: -1, 389: -1, 380: 1, 315: 1}, {458: -8, 466: 6, 389: 1, 89: 1}, {389: -1, 466: -1, 458: 1, 398: 1}, {466: -2, 458: 1, 471: 1}, {307: -1, 315: -1, 389: 1, 58: 1}, {389: -1, 315: -1, 307: 1, 398: 1}, {307: -1, 58: -1, 315: 1, 56: 1}, {315: -1, 58: -1, 307: 1, 59: 1}, {389: -1, 398: -1, 466: 1, 315: 1}, {466: -1, 398: -1, 389: 1, 471: 1}, {315: -1, 398: -1, 389: 1, 324: 1}, {466: -9, 471: 7, 398: 1, 89: 1}, {398: -1, 471: -1, 466: 1, 408: 1}, {471: -2, 466: 1, 476: 1}, {315: -1, 324: -1, 398: 1, 59: 1}, {398: -1, 324: -1, 315: 1, 408: 1}, {315: -1, 59: -1, 324: 1, 58: 1}, {324: -1, 59: -1, 315: 1, 60: 1}, {398: -1, 408: -1, 471: 1, 324: 1}, {471: -1, 408: -1, 398: 1, 476: 1}, {324: -1, 408: -1, 398: 1, 333: 1}, {471: -10, 476: 8, 408: 1, 89: 1}, {408: -1, 476: -1, 471: 1, 419: 1}, {476: -2, 471: 1, 481: 1}, {324: -1, 333: -1, 408: 1, 60: 1}, {408: -1, 333: -1, 324: 1, 419: 1}, {324: -1, 60: -1, 333: 1, 59: 1}, {333: -1, 60: -1, 324: 1, 61: 1}, {408: -1, 419: -1, 476: 1, 333: 1}, {476: -1, 419: -1, 408: 1, 481: 1}, {333: -1, 419: -1, 408: 1, 343: 1}, {476: -11, 481: 9, 419: 1, 89: 1}, {419: -1, 481: -1, 476: 1, 427: 1}, {481: -2, 476: 1, 94: 1}, {333: -1, 343: -1, 419: 1, 61: 1}, {419: -1, 343: -1, 333: 1, 427: 1}, {333: -1, 61: -1, 343: 1, 60: 1}, {343: -1, 61: -1, 333: 1, 62: 1}, {419: -1, 427: -1, 481: 1, 343: 1}, {481: -1, 427: -1, 419: 1, 94: 1}, {343: -1, 427: -1, 419: 1, 352: 1}, {481: -12, 94: 10, 427: 1, 89: 1}, {427: -1, 94: -1, 481: 1, 437: 1}, {343: -1, 352: -1, 427: 1, 62: 1}, {427: -1, 352: -1, 343: 1, 437: 1}, {343: -1, 62: -1, 352: 1, 61: 1}, {352: -1, 62: -1, 343: 1, 63: 1}, {427: -1, 437: -1, 352: 1, 94: 1}, {352: -1, 437: -1, 427: 1, 362: 1}, {437: -2, 427: 1, 447: 1}, {352: -1, 362: -1, 437: 1, 63: 1}, {437: -1, 362: -1, 352: 1, 447: 1}, {352: -1, 63: -1, 362: 1, 62: 1}, {362: -1, 63: -1, 352: 1, 64: 1}, {437: -2, 362: 1, 94: 1}, {362: -1, 447: -1, 437: 1, 372: 1}, {447: -2, 437: 1, 454: 1}, {362: -1, 372: -1, 447: 1, 64: 1}, {447: -1, 372: -1, 362: 1, 454: 1}, {362: -1, 64: -1, 372: 1, 63: 1}, {372: -1, 64: -1, 362: 1, 65: 1}, {447: -3, 454: 1, 372: 1, 94: 1}, {372: -1, 454: -1, 447: 1, 381: 1}, {454: -2, 447: 1, 460: 1}, {372: -1, 381: -1, 454: 1, 65: 1}, {454: -1, 381: -1, 372: 1, 460: 1}, {372: -1, 65: -1, 381: 1, 64: 1}, {381: -1, 65: -1, 372: 1, 66: 1}, {454: -4, 460: 2, 381: 1, 94: 1}, {381: -1, 460: -1, 454: 1, 390: 1}, {460: -2, 454: 1, 468: 1}, {381: -1, 390: -1, 460: 1, 66: 1}, {460: -1, 390: -1, 381: 1, 468: 1}, {381: -1, 66: -1, 390: 1, 65: 1}, {390: -1, 66: -1, 381: 1, 68: 1}, {460: -5, 468: 3, 390: 1, 94: 1}, {390: -1, 468: -1, 460: 1, 399: 1}, {468: -2, 460: 1, 473: 1}, {390: -1, 399: -1, 468: 1, 68: 1}, {468: -1, 399: -1, 390: 1, 473: 1}, {390: -1, 68: -1, 399: 1, 66: 1}, {399: -1, 68: -1, 390: 1, 69: 1}, {468: -6, 473: 4, 399: 1, 94: 1}, {399: -1, 473: -1, 468: 1, 409: 1}, {473: -2, 468: 1, 478: 1}, {399: -1, 409: -1, 473: 1, 69: 1}, {473: -1, 409: -1, 399: 1, 478: 1}, {399: -1, 69: -1, 409: 1, 68: 1}, {409: -1, 69: -1, 399: 1, 70: 1}, {473: -7, 478: 5, 409: 1, 94: 1}, {409: -1, 478: -1, 473: 1, 420: 1}, {478: -2, 473: 1, 483: 1}, {409: -1, 420: -1, 478: 1, 70: 1}, {478: -1, 420: -1, 409: 1, 483: 1}, {409: -1, 70: -1, 420: 1, 69: 1}, {420: -1, 70: -1, 409: 1, 71: 1}, {478: -8, 483: 6, 420: 1, 94: 1}, {420: -1, 483: -1, 478: 1, 428: 1}, {483: -2, 478: 1, 486: 1}, {420: -1, 428: -1, 483: 1, 71: 1}, {483: -1, 428: -1, 420: 1, 486: 1}, {420: -1, 71: -1, 428: 1, 70: 1}, {428: -1, 71: -1, 420: 1, 72: 1}, {483: -9, 486: 7, 428: 1, 94: 1}, {428: -1, 486: -1, 483: 1, 438: 1}, {486: -2, 483: 1, 489: 1}, {428: -1, 438: -1, 486: 1, 72: 1}, {486: -1, 438: -1, 428: 1, 489: 1}, {428: -1, 72: -1, 438: 1, 71: 1}, {438: -1, 72: -1, 428: 1, 73: 1}, {486: -10, 489: 8, 438: 1, 94: 1}, {438: -1, 489: -1, 486: 1, 448: 1}, {489: -2, 486: 1, 491: 1}, {438: -1, 448: -1, 489: 1, 73: 1}, {489: -1, 448: -1, 438: 1, 491: 1}, {438: -1, 73: -1, 448: 1, 72: 1}, {448: -1, 73: -1, 438: 1, 74: 1}, {489: -11, 491: 9, 448: 1, 94: 1}, {448: -1, 491: -1, 489: 1, 455: 1}, {491: -2, 489: 1, 99: 1}, {448: -1, 455: -1, 491: 1, 74: 1}, {491: -1, 455: -1, 448: 1, 99: 1}, {448: -1, 74: -1, 455: 1, 73: 1}, {455: -1, 74: -1, 448: 1, 75: 1}, {491: -12, 99: 10, 455: 1, 94: 1}, {455: -1, 99: -1, 491: 1, 461: 1}, {455: -1, 461: -1, 99: 1, 75: 1}, {461: -2, 455: 1, 469: 1}, {455: -1, 75: -1, 461: 1, 74: 1}, {461: -1, 75: -1, 455: 1, 76: 1}, {461: -2, 99: 1, 76: 1}, {469: -2, 461: 1, 474: 1}, {461: -1, 76: -1, 469: 1, 75: 1}, {469: -1, 76: -1, 461: 1, 77: 1}, {469: -3, 474: 1, 99: 1, 77: 1}, {474: -2, 469: 1, 479: 1}, {469: -1, 77: -1, 474: 1, 76: 1}, {474: -1, 77: -1, 469: 1, 78: 1}, {474: -4, 479: 2, 99: 1, 78: 1}, {479: -2, 474: 1, 484: 1}, {474: -1, 78: -1, 479: 1, 77: 1}, {479: -1, 78: -1, 474: 1, 79: 1}, {479: -5, 484: 3, 99: 1, 79: 1}, {484: -2, 479: 1, 487: 1}, {479: -1, 79: -1, 484: 1, 78: 1}, {484: -1, 79: -1, 479: 1, 81: 1}, {484: -6, 487: 4, 99: 1, 81: 1}, {487: -2, 484: 1, 490: 1}, {484: -1, 81: -1, 487: 1, 79: 1}, {487: -1, 81: -1, 484: 1, 82: 1}, {487: -7, 490: 5, 99: 1, 82: 1}, {490: -2, 487: 1, 492: 1}, {487: -1, 82: -1, 490: 1, 81: 1}, {490: -1, 82: -1, 487: 1, 83: 1}, {490: -8, 492: 6, 99: 1, 83: 1}, {492: -2, 490: 1, 493: 1}, {490: -1, 83: -1, 492: 1, 82: 1}, {492: -1, 83: -1, 490: 1, 85: 1}, {492: -9, 493: 7, 99: 1, 85: 1}, {493: -2, 492: 1, 494: 1}, {492: -1, 85: -1, 493: 1, 83: 1}, {493: -1, 85: -1, 492: 1, 87: 1}, {493: -10, 494: 8, 99: 1, 87: 1}, {494: -2, 493: 1, 495: 1}, {493: -1, 87: -1, 494: 1, 85: 1}, {494: -1, 87: -1, 493: 1, 88: 1}, {494: -11, 495: 9, 99: 1, 88: 1}, {495: -2, 494: 1, 103: 1}, {494: -1, 88: -1, 495: 1, 87: 1}, {495: -1, 88: -1, 494: 1, 90: 1}, {495: -12, 103: 10, 99: 1, 90: 1}, {495: -1, 90: -1, 88: 1, 103: 1}, {90: -1, 103: -1, 495: 1, 91: 1}, {106: -2, 5: 1, 105: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {463: -2, 89: 1, 86: 1}, {480: -1, 89: -1, 463: 1, 94: 1}, {463: -1, 89: -1, 480: 1, 84: 1}, {480: -2, 463: 1, 97: 1}, {463: -3, 86: 1, 480: 1, 84: 1}, {480: -3, 97: 1, 94: 1, 86: 1}, {480: -1, 94: -1, 97: 1, 89: 1}, {97: -1, 94: -1, 480: 1, 99: 1}, {86: -1, 84: -1, 463: 1, 440: 1}, {440: -2, 86: 1, 80: 1}, {440: -2, 430: 1, 84: 1}, {430: -3, 86: 1, 440: 1, 3: 1}, {430: -1, 80: -1, 440: 1, 411: 1}, {411: -2, 400: 1, 80: 1}, {400: -2, 411: 1, 3: 1}, {411: -2, 430: 1, 2: 1}, {430: -2, 400: 1, 86: 1}, {400: -4, 3: 2, 430: 1, 2: 1}, {103: -2, 5: 1, 99: 1}, {99: -2, 103: 1, 94: 1}, {299: -3, 4: 1, 3: 1, 41: 1}, {299: -2, 4: 1, 53: 1}, {299: -1, 41: -1, 4: 1, 28: 1}, {53: -2, 3: 1, 28: 1}, {299: -1, 28: -1, 41: 1, 53: 1}, {41: -1, 28: -1, 299: 1, 1: 1}, {206: -2, 4: 1, 24: 1}, {206: -2, 273: 1, 41: 1}, {273: -2, 206: 1, 353: 1}, {206: -1, 24: -1, 273: 1, 14: 1}, {273: -1, 24: -1, 206: 1, 35: 1}, {206: -1, 41: -1, 4: 1, 14: 1}, {206: -1, 14: -1, 41: 1, 24: 1}, {41: -1, 14: -1, 206: 1, 1: 1}, {273: -3, 353: 1, 4: 1, 35: 1}, {353: -3, 4: 1, 273: 1, 2: 1}, {273: -1, 35: -1, 353: 1, 24: 1}, {353: -1, 35: -1, 273: 1, 46: 1}, {353: -2, 4: 1, 67: 1}, {67: -2, 2: 1, 57: 1}, {46: -2, 35: 1, 57: 1}, {57: -2, 46: 1, 67: 1}, {161: -2, 4: 1, 7: 1}, {161: -2, 166: 1, 41: 1}, {166: -2, 161: 1, 171: 1}, {161: -1, 7: -1, 166: 1, 6: 1}, {166: -1, 7: -1, 161: 1, 8: 1}, {161: -1, 41: -1, 4: 1, 6: 1}, {161: -1, 6: -1, 41: 1, 7: 1}, {41: -1, 6: -1, 161: 1, 1: 1}, {166: -3, 171: 1, 4: 1, 8: 1}, {171: -2, 166: 1, 176: 1}, {166: -1, 8: -1, 171: 1, 7: 1}, {171: -1, 8: -1, 166: 1, 9: 1}, {171: -4, 176: 2, 4: 1, 9: 1}, {176: -2, 171: 1, 182: 1}, {171: -1, 9: -1, 176: 1, 8: 1}, {176: -1, 9: -1, 171: 1, 10: 1}, {176: -5, 182: 3, 4: 1, 10: 1}, {182: -2, 176: 1, 188: 1}, {176: -1, 10: -1, 182: 1, 9: 1}, {182: -1, 10: -1, 176: 1, 11: 1}, {182: -6, 188: 4, 4: 1, 11: 1}, {188: -2, 182: 1, 195: 1}, {182: -1, 11: -1, 188: 1, 10: 1}, {188: -1, 11: -1, 182: 1, 12: 1}, {188: -7, 195: 5, 4: 1, 12: 1}, {195: -2, 188: 1, 201: 1}, {188: -1, 12: -1, 195: 1, 11: 1}, {195: -1, 12: -1, 188: 1, 13: 1}, {195: -8, 201: 6, 4: 1, 13: 1}, {201: -2, 195: 1, 208: 1}, {195: -1, 13: -1, 201: 1, 12: 1}, {201: -1, 13: -1, 195: 1, 15: 1}, {201: -9, 208: 7, 4: 1, 15: 1}, {208: -2, 201: 1, 214: 1}, {201: -1, 15: -1, 208: 1, 13: 1}, {208: -1, 15: -1, 201: 1, 16: 1}, {208: -10, 214: 8, 4: 1, 16: 1}, {214: -2, 208: 1, 221: 1}, {208: -1, 16: -1, 214: 1, 15: 1}, {214: -1, 16: -1, 208: 1, 17: 1}, {214: -11, 221: 9, 4: 1, 17: 1}, {221: -2, 214: 1, 228: 1}, {214: -1, 17: -1, 221: 1, 16: 1}, {221: -1, 17: -1, 214: 1, 18: 1}, {221: -12, 228: 10, 4: 1, 18: 1}, {228: -2, 221: 1, 235: 1}, {221: -1, 18: -1, 228: 1, 17: 1}, {228: -1, 18: -1, 221: 1, 19: 1}, {228: -13, 235: 11, 4: 1, 19: 1}, {235: -2, 228: 1, 243: 1}, {228: -1, 19: -1, 235: 1, 18: 1}, {235: -1, 19: -1, 228: 1, 20: 1}, {235: -14, 243: 12, 4: 1, 20: 1}, {243: -2, 235: 1, 251: 1}, {235: -1, 20: -1, 243: 1, 19: 1}, {243: -1, 20: -1, 235: 1, 21: 1}, {243: -15, 251: 13, 4: 1, 21: 1}, {251: -2, 243: 1, 260: 1}, {243: -1, 21: -1, 251: 1, 20: 1}, {251: -1, 21: -1, 243: 1, 22: 1}, {251: -16, 260: 14, 4: 1, 22: 1}, {260: -2, 251: 1, 268: 1}, {251: -1, 22: -1, 260: 1, 21: 1}, {260: -1, 22: -1, 251: 1, 23: 1}, {260: -17, 268: 15, 4: 1, 23: 1}, {268: -2, 260: 1, 277: 1}, {260: -1, 23: -1, 268: 1, 22: 1}, {268: -1, 23: -1, 260: 1, 25: 1}, {268: -18, 277: 16, 4: 1, 25: 1}, {277: -2, 268: 1, 286: 1}, {268: -1, 25: -1, 277: 1, 23: 1}, {277: -1, 25: -1, 268: 1, 26: 1}, {277: -19, 286: 17, 4: 1, 26: 1}, {286: -2, 277: 1, 294: 1}, {277: -1, 26: -1, 286: 1, 25: 1}, {286: -1, 26: -1, 277: 1, 27: 1}, {286: -20, 294: 18, 4: 1, 27: 1}, {294: -2, 286: 1, 303: 1}, {286: -1, 27: -1, 294: 1, 26: 1}, {294: -1, 27: -1, 286: 1, 29: 1}, {294: -21, 303: 19, 4: 1, 29: 1}, {303: -2, 294: 1, 311: 1}, {294: -1, 29: -1, 303: 1, 27: 1}, {303: -1, 29: -1, 294: 1, 30: 1}, {303: -22, 311: 20, 4: 1, 30: 1}, {311: -2, 303: 1, 320: 1}, {303: -1, 30: -1, 311: 1, 29: 1}, {311: -1, 30: -1, 303: 1, 31: 1}, {311: -23, 320: 21, 4: 1, 31: 1}, {320: -2, 311: 1, 329: 1}, {311: -1, 31: -1, 320: 1, 30: 1}, {320: -1, 31: -1, 311: 1, 32: 1}, {320: -24, 329: 22, 4: 1, 32: 1}, {329: -2, 320: 1, 339: 1}, {320: -1, 32: -1, 329: 1, 31: 1}, {329: -1, 32: -1, 320: 1, 33: 1}, {329: -25, 339: 23, 4: 1, 33: 1}, {339: -2, 329: 1, 348: 1}, {329: -1, 33: -1, 339: 1, 32: 1}, {339: -1, 33: -1, 329: 1, 34: 1}, {339: -26, 348: 24, 4: 1, 34: 1}, {348: -2, 339: 1, 358: 1}, {339: -1, 34: -1, 348: 1, 33: 1}, {348: -1, 34: -1, 339: 1, 36: 1}, {348: -27, 358: 25, 4: 1, 36: 1}, {358: -2, 348: 1, 368: 1}, {348: -1, 36: -1, 358: 1, 34: 1}, {358: -1, 36: -1, 348: 1, 37: 1}, {358: -28, 368: 26, 4: 1, 37: 1}, {368: -2, 358: 1, 377: 1}, {358: -1, 37: -1, 368: 1, 36: 1}, {368: -1, 37: -1, 358: 1, 38: 1}, {368: -29, 377: 27, 4: 1, 38: 1}, {377: -2, 368: 1, 386: 1}, {368: -1, 38: -1, 377: 1, 37: 1}, {377: -1, 38: -1, 368: 1, 39: 1}, {377: -30, 386: 28, 4: 1, 39: 1}, {386: -2, 377: 1, 395: 1}, {377: -1, 39: -1, 386: 1, 38: 1}, {386: -1, 39: -1, 377: 1, 40: 1}, {386: -31, 395: 29, 4: 1, 40: 1}, {395: -2, 386: 1, 405: 1}, {386: -1, 40: -1, 395: 1, 39: 1}, {395: -1, 40: -1, 386: 1, 42: 1}, {395: -32, 405: 30, 4: 1, 42: 1}, {405: -2, 395: 1, 416: 1}, {395: -1, 42: -1, 405: 1, 40: 1}, {405: -1, 42: -1, 395: 1, 43: 1}, {405: -33, 416: 31, 4: 1, 43: 1}, {416: -2, 405: 1, 424: 1}, {405: -1, 43: -1, 416: 1, 42: 1}, {416: -1, 43: -1, 405: 1, 44: 1}, {416: -34, 424: 32, 4: 1, 44: 1}, {424: -2, 416: 1, 434: 1}, {416: -1, 44: -1, 424: 1, 43: 1}, {424: -1, 44: -1, 416: 1, 45: 1}, {424: -35, 434: 33, 4: 1, 45: 1}, {434: -2, 424: 1, 444: 1}, {424: -1, 45: -1, 434: 1, 44: 1}, {434: -1, 45: -1, 424: 1, 47: 1}, {434: -36, 444: 34, 4: 1, 47: 1}, {444: -2, 434: 1, 451: 1}, {434: -1, 47: -1, 444: 1, 45: 1}, {444: -1, 47: -1, 434: 1, 48: 1}, {444: -37, 451: 35, 4: 1, 48: 1}, {451: -2, 444: 1, 457: 1}, {444: -1, 48: -1, 451: 1, 47: 1}, {451: -1, 48: -1, 444: 1, 49: 1}, {451: -38, 457: 36, 4: 1, 49: 1}, {457: -2, 451: 1, 465: 1}, {451: -1, 49: -1, 457: 1, 48: 1}, {457: -1, 49: -1, 451: 1, 50: 1}, {457: -39, 465: 37, 4: 1, 50: 1}, {465: -2, 457: 1, 470: 1}, {457: -1, 50: -1, 465: 1, 49: 1}, {465: -1, 50: -1, 457: 1, 51: 1}, {465: -40, 470: 38, 4: 1, 51: 1}, {470: -2, 465: 1, 475: 1}, {465: -1, 51: -1, 470: 1, 50: 1}, {470: -1, 51: -1, 465: 1, 52: 1}, {470: -41, 475: 39, 4: 1, 52: 1}, {475: -2, 470: 1, 92: 1}, {470: -1, 52: -1, 475: 1, 51: 1}, {475: -1, 52: -1, 470: 1, 54: 1}, {475: -42, 92: 40, 4: 1, 54: 1}, {475: -1, 54: -1, 52: 1, 92: 1}, {54: -1, 92: -1, 475: 1, 55: 1}, {106: -2, 5: 1, 105: 1}, {55: -2, 54: 1, 56: 1}, {56: -2, 55: 1, 58: 1}, {58: -2, 56: 1, 59: 1}, {59: -2, 58: 1, 60: 1}, {60: -2, 59: 1, 61: 1}, {61: -2, 60: 1, 62: 1}, {62: -2, 61: 1, 63: 1}, {63: -2, 62: 1, 64: 1}, {64: -2, 63: 1, 65: 1}, {65: -2, 64: 1, 66: 1}, {66: -2, 65: 1, 68: 1}, {68: -2, 66: 1, 69: 1}, {69: -2, 68: 1, 70: 1}, {70: -2, 69: 1, 71: 1}, {71: -2, 70: 1, 72: 1}, {72: -2, 71: 1, 73: 1}, {73: -2, 72: 1, 74: 1}, {74: -2, 73: 1, 75: 1}, {75: -2, 74: 1, 76: 1}, {76: -2, 75: 1, 77: 1}, {77: -2, 76: 1, 78: 1}, {78: -2, 77: 1, 79: 1}, {79: -2, 78: 1, 81: 1}, {81: -2, 79: 1, 82: 1}, {82: -2, 81: 1, 83: 1}, {83: -2, 82: 1, 85: 1}, {85: -2, 83: 1, 87: 1}, {87: -2, 85: 1, 88: 1}, {88: -2, 87: 1, 90: 1}, {90: -2, 88: 1, 91: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {429: -2, 4: 1, 86: 1}, {429: -3, 4: 1, 3: 1, 92: 1}, {429: -1, 86: -1, 3: 1, 92: 1}, {86: -1, 92: -1, 429: 1, 97: 1}, {97: -2, 5: 1, 86: 1}, {462: 1, 439: -3, 4: 1, 84: 1}, {462: -2, 439: 1, 92: 1}, {439: -2, 462: 1, 410: 1}, {462: -1, 84: -1, 439: 1, 89: 1}, {439: -1, 84: -1, 462: 1, 80: 1}, {462: -4, 92: 2, 4: 1, 89: 1}, {462: -1, 89: -1, 92: 1, 84: 1}, {89: -1, 92: -1, 462: 1, 94: 1}, {410: -2, 4: 1, 80: 1}, {410: -3, 4: 1, 439: 1, 2: 1}, {439: -1, 80: -1, 410: 1, 84: 1}, {410: -1, 80: -1, 439: 1, 2: 1}, {103: -2, 5: 1, 99: 1}, {99: -2, 103: 1, 94: 1}, {94: -2, 99: 1, 89: 1}];
    H1_sparse = [{148: -1, 193: -1, 282: 1, 24: 1}, {148: -1, 282: -1, 193: 1, 53: 1}, {193: -1, 282: -1, 148: 1, 363: 1}, {148: -1, 24: -1, 193: 1, 14: 1}, {193: -1, 24: -1, 148: 1, 35: 1}, {148: -1, 53: -1, 282: 1, 28: 1}, {282: -1, 53: -1, 148: 1, 3: 1}, {148: -1, 14: -1, 24: 1, 28: 1}, {148: -1, 28: -1, 14: 1, 53: 1}, {14: -1, 28: -1, 148: 1, 1: 1}, {193: -1, 256: -1, 363: 1, 35: 1}, {193: -1, 363: -1, 256: 1, 282: 1}, {256: -2, 193: 1, 334: 1}, {193: -1, 35: -1, 256: 1, 24: 1}, {256: -1, 35: -1, 193: 1, 46: 1}, {282: -2, 193: 1, 3: 1}, {256: -2, 363: 1, 46: 1}, {334: -3, 363: 1, 256: 1, 2: 1}, {256: -1, 46: -1, 334: 1, 35: 1}, {334: -1, 46: -1, 256: 1, 57: 1}, {334: -2, 363: 1, 67: 1}, {363: -2, 334: 1, 3: 1}, {67: -2, 2: 1, 57: 1}, {57: -2, 46: 1, 67: 1}, {282: -2, 363: 1, 53: 1}, {363: -4, 3: 2, 282: 1, 2: 1}, {122: -1, 125: -1, 219: 1, 7: 1}, {122: -1, 219: -1, 125: 1, 53: 1}, {125: -1, 219: -1, 122: 1, 226: 1}, {122: -1, 7: -1, 125: 1, 6: 1}, {125: -1, 7: -1, 122: 1, 8: 1}, {122: -1, 53: -1, 219: 1, 28: 1}, {219: -1, 53: -1, 122: 1, 3: 1}, {122: -1, 6: -1, 7: 1, 28: 1}, {122: -1, 28: -1, 6: 1, 53: 1}, {6: -1, 28: -1, 122: 1, 1: 1}, {125: -1, 128: -1, 226: 1, 8: 1}, {125: -1, 226: -1, 128: 1, 219: 1}, {128: -1, 226: -1, 125: 1, 233: 1}, {125: -1, 8: -1, 128: 1, 7: 1}, {128: -1, 8: -1, 125: 1, 9: 1}, {219: -2, 125: 1, 3: 1}, {128: -1, 131: -1, 233: 1, 9: 1}, {128: -1, 233: -1, 131: 1, 226: 1}, {131: -1, 233: -1, 128: 1, 241: 1}, {128: -1, 9: -1, 131: 1, 8: 1}, {131: -1, 9: -1, 128: 1, 10: 1}, {226: -3, 233: 1, 128: 1, 3: 1}, {131: -1, 134: -1, 241: 1, 10: 1}, {131: -1, 241: -1, 134: 1, 233: 1}, {134: -1, 241: -1, 131: 1, 249: 1}, {131: -1, 10: -1, 134: 1, 9: 1}, {134: -1, 10: -1, 131: 1, 11: 1}, {233: -4, 241: 2, 131: 1, 3: 1}, {134: -1, 137: -1, 249: 1, 11: 1}, {134: -1, 249: -1, 137: 1, 241: 1}, {137: -1, 249: -1, 134: 1, 258: 1}, {134: -1, 11: -1, 137: 1, 10: 1}, {137: -1, 11: -1, 134: 1, 12: 1}, {241: -5, 249: 3, 134: 1, 3: 1}, {137: -1, 141: -1, 258: 1, 12: 1}, {137: -1, 258: -1, 141: 1, 249: 1}, {141: -1, 258: -1, 137: 1, 266: 1}, {137: -1, 12: -1, 141: 1, 11: 1}, {141: -1, 12: -1, 137: 1, 13: 1}, {249: -6, 258: 4, 137: 1, 3: 1}, {141: -1, 145: -1, 266: 1, 13: 1}, {141: -1, 266: -1, 145: 1, 258: 1}, {145: -1, 266: -1, 141: 1, 275: 1}, {141: -1, 13: -1, 145: 1, 12: 1}, {145: -1, 13: -1, 141: 1, 15: 1}, {258: -7, 266: 5, 141: 1, 3: 1}, {145: -1, 150: -1, 275: 1, 15: 1}, {145: -1, 275: -1, 150: 1, 266: 1}, {150: -1, 275: -1, 145: 1, 284: 1}, {145: -1, 15: -1, 150: 1, 13: 1}, {150: -1, 15: -1, 145: 1, 16: 1}, {266: -8, 275: 6, 145: 1, 3: 1}, {150: -1, 154: -1, 284: 1, 16: 1}, {150: -1, 284: -1, 154: 1, 275: 1}, {154: -1, 284: -1, 150: 1, 292: 1}, {150: -1, 16: -1, 154: 1, 15: 1}, {154: -1, 16: -1, 150: 1, 17: 1}, {275: -9, 284: 7, 150: 1, 3: 1}, {154: -1, 158: -1, 292: 1, 17: 1}, {154: -1, 292: -1, 158: 1, 284: 1}, {158: -1, 292: -1, 154: 1, 301: 1}, {154: -1, 17: -1, 158: 1, 16: 1}, {158: -1, 17: -1, 154: 1, 18: 1}, {284: -10, 292: 8, 154: 1, 3: 1}, {158: -1, 163: -1, 301: 1, 18: 1}, {158: -1, 301: -1, 163: 1, 292: 1}, {163: -1, 301: -1, 158: 1, 309: 1}, {158: -1, 18: -1, 163: 1, 17: 1}, {163: -1, 18: -1, 158: 1, 19: 1}, {292: -11, 301: 9, 158: 1, 3: 1}, {163: -1, 168: -1, 309: 1, 19: 1}, {163: -1, 309: -1, 168: 1, 301: 1}, {168: -1, 309: -1, 163: 1, 318: 1}, {163: -1, 19: -1, 168: 1, 18: 1}, {168: -1, 19: -1, 163: 1, 20: 1}, {301: -12, 309: 10, 163: 1, 3: 1}, {168: -1, 173: -1, 318: 1, 20: 1}, {168: -1, 318: -1, 173: 1, 309: 1}, {173: -1, 318: -1, 168: 1, 327: 1}, {168: -1, 20: -1, 173: 1, 19: 1}, {173: -1, 20: -1, 168: 1, 21: 1}, {309: -13, 318: 11, 168: 1, 3: 1}, {173: -1, 178: -1, 327: 1, 21: 1}, {173: -1, 327: -1, 178: 1, 318: 1}, {178: -1, 327: -1, 173: 1, 337: 1}, {173: -1, 21: -1, 178: 1, 20: 1}, {178: -1, 21: -1, 173: 1, 22: 1}, {318: -14, 327: 12, 173: 1, 3: 1}, {178: -1, 184: -1, 337: 1, 22: 1}, {178: -1, 337: -1, 184: 1, 327: 1}, {184: -1, 337: -1, 178: 1, 346: 1}, {178: -1, 22: -1, 184: 1, 21: 1}, {184: -1, 22: -1, 178: 1, 23: 1}, {327: -15, 337: 13, 178: 1, 3: 1}, {184: -1, 190: -1, 346: 1, 23: 1}, {184: -1, 346: -1, 190: 1, 337: 1}, {190: -1, 346: -1, 184: 1, 356: 1}, {184: -1, 23: -1, 190: 1, 22: 1}, {190: -1, 23: -1, 184: 1, 25: 1}, {337: -16, 346: 14, 184: 1, 3: 1}, {190: -1, 197: -1, 356: 1, 25: 1}, {190: -1, 356: -1, 197: 1, 346: 1}, {197: -1, 356: -1, 190: 1, 366: 1}, {190: -1, 25: -1, 197: 1, 23: 1}, {197: -1, 25: -1, 190: 1, 26: 1}, {346: -17, 356: 15, 190: 1, 3: 1}, {197: -1, 203: -1, 366: 1, 26: 1}, {197: -1, 366: -1, 203: 1, 356: 1}, {203: -1, 366: -1, 197: 1, 375: 1}, {197: -1, 26: -1, 203: 1, 25: 1}, {203: -1, 26: -1, 197: 1, 27: 1}, {356: -18, 366: 16, 197: 1, 3: 1}, {203: -1, 210: -1, 375: 1, 27: 1}, {203: -1, 375: -1, 210: 1, 366: 1}, {210: -1, 375: -1, 203: 1, 384: 1}, {203: -1, 27: -1, 210: 1, 26: 1}, {210: -1, 27: -1, 203: 1, 29: 1}, {366: -19, 375: 17, 203: 1, 3: 1}, {210: -1, 216: -1, 384: 1, 29: 1}, {210: -1, 384: -1, 216: 1, 375: 1}, {216: -1, 384: -1, 210: 1, 393: 1}, {210: -1, 29: -1, 216: 1, 27: 1}, {216: -1, 29: -1, 210: 1, 30: 1}, {375: -20, 384: 18, 210: 1, 3: 1}, {216: -1, 223: -1, 393: 1, 30: 1}, {216: -1, 393: -1, 223: 1, 384: 1}, {223: -1, 393: -1, 216: 1, 403: 1}, {216: -1, 30: -1, 223: 1, 29: 1}, {223: -1, 30: -1, 216: 1, 31: 1}, {384: -21, 393: 19, 216: 1, 3: 1}, {223: -1, 230: -1, 403: 1, 31: 1}, {223: -1, 403: -1, 230: 1, 393: 1}, {230: -1, 403: -1, 223: 1, 414: 1}, {223: -1, 31: -1, 230: 1, 30: 1}, {230: -1, 31: -1, 223: 1, 32: 1}, {393: -22, 403: 20, 223: 1, 3: 1}, {230: -1, 237: -1, 414: 1, 32: 1}, {230: -1, 414: -1, 237: 1, 403: 1}, {237: -1, 414: -1, 230: 1, 422: 1}, {230: -1, 32: -1, 237: 1, 31: 1}, {237: -1, 32: -1, 230: 1, 33: 1}, {403: -23, 414: 21, 230: 1, 3: 1}, {237: -1, 245: -1, 422: 1, 33: 1}, {237: -1, 422: -1, 245: 1, 414: 1}, {245: -1, 422: -1, 237: 1, 432: 1}, {237: -1, 33: -1, 245: 1, 32: 1}, {245: -1, 33: -1, 237: 1, 34: 1}, {414: -24, 422: 22, 237: 1, 3: 1}, {245: -1, 253: -1, 432: 1, 34: 1}, {245: -1, 432: -1, 253: 1, 422: 1}, {253: -1, 432: -1, 245: 1, 442: 1}, {245: -1, 34: -1, 253: 1, 33: 1}, {253: -1, 34: -1, 245: 1, 36: 1}, {422: -25, 432: 23, 245: 1, 3: 1}, {253: -1, 262: -1, 442: 1, 36: 1}, {253: -1, 442: -1, 262: 1, 432: 1}, {262: -1, 442: -1, 253: 1, 449: 1}, {253: -1, 36: -1, 262: 1, 34: 1}, {262: -1, 36: -1, 253: 1, 37: 1}, {432: -26, 442: 24, 253: 1, 3: 1}, {262: -1, 270: -1, 449: 1, 37: 1}, {262: -1, 449: -1, 270: 1, 442: 1}, {270: -1, 449: -1, 262: 1, 86: 1}, {262: -1, 37: -1, 270: 1, 36: 1}, {270: -1, 37: -1, 262: 1, 38: 1}, {442: -27, 449: 25, 262: 1, 3: 1}, {270: -1, 279: -1, 38: 1, 86: 1}, {270: -1, 38: -1, 279: 1, 37: 1}, {279: -1, 38: -1, 270: 1, 39: 1}, {270: -1, 86: -1, 279: 1, 449: 1}, {279: -2, 270: 1, 288: 1}, {449: -28, 86: 26, 270: 1, 3: 1}, {279: -2, 39: 1, 86: 1}, {279: -1, 39: -1, 288: 1, 38: 1}, {288: -1, 39: -1, 279: 1, 40: 1}, {288: -2, 279: 1, 296: 1}, {288: -3, 296: 1, 40: 1, 86: 1}, {288: -1, 40: -1, 296: 1, 39: 1}, {296: -1, 40: -1, 288: 1, 42: 1}, {296: -2, 288: 1, 305: 1}, {296: -4, 305: 2, 42: 1, 86: 1}, {296: -1, 42: -1, 305: 1, 40: 1}, {305: -1, 42: -1, 296: 1, 43: 1}, {305: -2, 296: 1, 313: 1}, {305: -5, 313: 3, 43: 1, 86: 1}, {305: -1, 43: -1, 313: 1, 42: 1}, {313: -1, 43: -1, 305: 1, 44: 1}, {313: -2, 305: 1, 322: 1}, {313: -6, 322: 4, 44: 1, 86: 1}, {313: -1, 44: -1, 322: 1, 43: 1}, {322: -1, 44: -1, 313: 1, 45: 1}, {322: -2, 313: 1, 331: 1}, {322: -7, 331: 5, 45: 1, 86: 1}, {322: -1, 45: -1, 331: 1, 44: 1}, {331: -1, 45: -1, 322: 1, 47: 1}, {331: -2, 322: 1, 341: 1}, {331: -8, 341: 6, 47: 1, 86: 1}, {331: -1, 47: -1, 341: 1, 45: 1}, {341: -1, 47: -1, 331: 1, 48: 1}, {341: -2, 331: 1, 350: 1}, {341: -9, 350: 7, 48: 1, 86: 1}, {341: -1, 48: -1, 350: 1, 47: 1}, {350: -1, 48: -1, 341: 1, 49: 1}, {350: -2, 341: 1, 360: 1}, {350: -10, 360: 8, 49: 1, 86: 1}, {350: -1, 49: -1, 360: 1, 48: 1}, {360: -1, 49: -1, 350: 1, 50: 1}, {360: -2, 350: 1, 370: 1}, {360: -11, 370: 9, 50: 1, 86: 1}, {360: -1, 50: -1, 370: 1, 49: 1}, {370: -1, 50: -1, 360: 1, 51: 1}, {370: -2, 360: 1, 379: 1}, {370: -12, 379: 10, 51: 1, 86: 1}, {370: -1, 51: -1, 379: 1, 50: 1}, {379: -1, 51: -1, 370: 1, 52: 1}, {379: -2, 370: 1, 388: 1}, {379: -13, 388: 11, 52: 1, 86: 1}, {379: -1, 52: -1, 388: 1, 51: 1}, {388: -1, 52: -1, 379: 1, 54: 1}, {388: -2, 379: 1, 397: 1}, {388: -14, 397: 12, 54: 1, 86: 1}, {388: -1, 54: -1, 397: 1, 52: 1}, {397: -1, 54: -1, 388: 1, 55: 1}, {397: -2, 388: 1, 407: 1}, {397: -15, 407: 13, 55: 1, 86: 1}, {397: -1, 55: -1, 407: 1, 54: 1}, {407: -1, 55: -1, 397: 1, 56: 1}, {407: -2, 397: 1, 418: 1}, {407: -16, 418: 14, 56: 1, 86: 1}, {407: -1, 56: -1, 418: 1, 55: 1}, {418: -1, 56: -1, 407: 1, 58: 1}, {418: -2, 407: 1, 426: 1}, {418: -17, 426: 15, 58: 1, 86: 1}, {418: -1, 58: -1, 426: 1, 56: 1}, {426: -1, 58: -1, 418: 1, 59: 1}, {426: -2, 418: 1, 436: 1}, {426: -18, 436: 16, 59: 1, 86: 1}, {426: -1, 59: -1, 436: 1, 58: 1}, {436: -1, 59: -1, 426: 1, 60: 1}, {436: -2, 426: 1, 446: 1}, {436: -19, 446: 17, 60: 1, 86: 1}, {436: -1, 60: -1, 446: 1, 59: 1}, {446: -1, 60: -1, 436: 1, 61: 1}, {446: -2, 436: 1, 453: 1}, {446: -20, 453: 18, 61: 1, 86: 1}, {446: -1, 61: -1, 453: 1, 60: 1}, {453: -1, 61: -1, 446: 1, 62: 1}, {453: -2, 446: 1, 459: 1}, {453: -21, 459: 19, 62: 1, 86: 1}, {453: -1, 62: -1, 459: 1, 61: 1}, {459: -1, 62: -1, 453: 1, 63: 1}, {459: -2, 453: 1, 467: 1}, {459: -22, 467: 20, 63: 1, 86: 1}, {459: -1, 63: -1, 467: 1, 62: 1}, {467: -1, 63: -1, 459: 1, 64: 1}, {467: -2, 459: 1, 472: 1}, {467: -23, 472: 21, 64: 1, 86: 1}, {467: -1, 64: -1, 472: 1, 63: 1}, {472: -1, 64: -1, 467: 1, 65: 1}, {472: -2, 467: 1, 477: 1}, {472: -24, 477: 22, 65: 1, 86: 1}, {472: -1, 65: -1, 477: 1, 64: 1}, {477: -1, 65: -1, 472: 1, 66: 1}, {477: -2, 472: 1, 482: 1}, {477: -25, 482: 23, 66: 1, 86: 1}, {477: -1, 66: -1, 482: 1, 65: 1}, {482: -1, 66: -1, 477: 1, 68: 1}, {482: -2, 477: 1, 485: 1}, {482: -26, 485: 24, 68: 1, 86: 1}, {482: -1, 68: -1, 485: 1, 66: 1}, {485: -1, 68: -1, 482: 1, 69: 1}, {485: -2, 482: 1, 488: 1}, {485: -27, 488: 25, 69: 1, 86: 1}, {485: -1, 69: -1, 488: 1, 68: 1}, {488: -1, 69: -1, 485: 1, 70: 1}, {488: -2, 485: 1, 97: 1}, {488: -1, 70: -1, 69: 1, 97: 1}, {488: -28, 97: 26, 70: 1, 86: 1}, {70: -1, 97: -1, 488: 1, 71: 1}, {219: -2, 226: 1, 53: 1}, {226: -2, 219: 1, 233: 1}, {233: -2, 226: 1, 241: 1}, {241: -2, 233: 1, 249: 1}, {249: -2, 241: 1, 258: 1}, {258: -2, 249: 1, 266: 1}, {266: -2, 258: 1, 275: 1}, {275: -2, 266: 1, 284: 1}, {284: -2, 275: 1, 292: 1}, {292: -2, 284: 1, 301: 1}, {301: -2, 292: 1, 309: 1}, {309: -2, 301: 1, 318: 1}, {318: -2, 309: 1, 327: 1}, {327: -2, 318: 1, 337: 1}, {337: -2, 327: 1, 346: 1}, {346: -2, 337: 1, 356: 1}, {356: -2, 346: 1, 366: 1}, {366: -2, 356: 1, 375: 1}, {375: -2, 366: 1, 384: 1}, {384: -2, 375: 1, 393: 1}, {393: -2, 384: 1, 403: 1}, {403: -2, 393: 1, 414: 1}, {414: -2, 403: 1, 422: 1}, {422: -2, 414: 1, 432: 1}, {432: -2, 422: 1, 442: 1}, {442: -2, 432: 1, 449: 1}, {449: -2, 442: 1, 86: 1}, {106: -2, 5: 1, 105: 1}, {71: -2, 70: 1, 72: 1}, {72: -2, 71: 1, 73: 1}, {73: -2, 72: 1, 74: 1}, {74: -2, 73: 1, 75: 1}, {75: -2, 74: 1, 76: 1}, {76: -2, 75: 1, 77: 1}, {77: -2, 76: 1, 78: 1}, {78: -2, 77: 1, 79: 1}, {79: -2, 78: 1, 81: 1}, {81: -2, 79: 1, 82: 1}, {82: -2, 81: 1, 83: 1}, {83: -2, 82: 1, 85: 1}, {85: -2, 83: 1, 87: 1}, {87: -2, 85: 1, 88: 1}, {88: -2, 87: 1, 90: 1}, {90: -2, 88: 1, 91: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {107: -1, 116: -1, 108: 1, 24: 1}, {107: -1, 108: -1, 116: 1, 7: 1}, {116: -1, 108: -1, 107: 1, 118: 1}, {107: -1, 24: -1, 116: 1, 14: 1}, {116: -1, 24: -1, 107: 1, 35: 1}, {107: -1, 7: -1, 108: 1, 6: 1}, {108: -1, 7: -1, 107: 1, 8: 1}, {107: -1, 14: -1, 24: 1, 6: 1}, {107: -1, 6: -1, 14: 1, 7: 1}, {14: -1, 6: -1, 107: 1, 1: 1}, {116: -1, 140: -1, 118: 1, 35: 1}, {116: -1, 118: -1, 140: 1, 108: 1}, {140: -1, 118: -1, 116: 1, 144: 1}, {116: -1, 35: -1, 140: 1, 24: 1}, {140: -1, 35: -1, 116: 1, 46: 1}, {108: -1, 118: -1, 116: 1, 109: 1}, {140: -1, 181: -1, 144: 1, 46: 1}, {140: -1, 144: -1, 181: 1, 118: 1}, {181: -1, 144: -1, 140: 1, 187: 1}, {140: -1, 46: -1, 181: 1, 35: 1}, {181: -1, 46: -1, 140: 1, 57: 1}, {118: -1, 144: -1, 140: 1, 120: 1}, {181: -1, 240: -1, 187: 1, 57: 1}, {181: -1, 187: -1, 240: 1, 144: 1}, {240: -1, 187: -1, 181: 1, 248: 1}, {181: -1, 57: -1, 240: 1, 46: 1}, {240: -1, 57: -1, 181: 1, 67: 1}, {144: -1, 187: -1, 181: 1, 149: 1}, {240: -1, 316: -1, 248: 1, 67: 1}, {240: -1, 248: -1, 316: 1, 187: 1}, {316: -1, 248: -1, 240: 1, 325: 1}, {240: -1, 67: -1, 316: 1, 57: 1}, {316: -1, 67: -1, 240: 1, 2: 1}, {187: -1, 248: -1, 240: 1, 194: 1}, {316: -2, 248: 1, 2: 1}, {248: -1, 325: -1, 316: 1, 257: 1}, {316: -2, 325: 1, 67: 1}, {325: -2, 316: 1, 335: 1}, {108: -1, 109: -1, 118: 1, 8: 1}, {118: -1, 109: -1, 108: 1, 120: 1}, {108: -1, 8: -1, 109: 1, 7: 1}, {109: -1, 8: -1, 108: 1, 9: 1}, {118: -1, 120: -1, 144: 1, 109: 1}, {144: -1, 120: -1, 118: 1, 149: 1}, {109: -1, 120: -1, 118: 1, 110: 1}, {144: -1, 149: -1, 187: 1, 120: 1}, {187: -1, 149: -1, 144: 1, 194: 1}, {120: -1, 149: -1, 144: 1, 123: 1}, {187: -1, 194: -1, 248: 1, 149: 1}, {248: -1, 194: -1, 187: 1, 257: 1}, {149: -1, 194: -1, 187: 1, 153: 1}, {248: -1, 257: -1, 325: 1, 194: 1}, {325: -1, 257: -1, 248: 1, 335: 1}, {194: -1, 257: -1, 248: 1, 200: 1}, {325: -3, 335: 1, 257: 1, 2: 1}, {257: -1, 335: -1, 325: 1, 265: 1}, {335: -2, 325: 1, 344: 1}, {109: -1, 110: -1, 120: 1, 9: 1}, {120: -1, 110: -1, 109: 1, 123: 1}, {109: -1, 9: -1, 110: 1, 8: 1}, {110: -1, 9: -1, 109: 1, 10: 1}, {120: -1, 123: -1, 149: 1, 110: 1}, {149: -1, 123: -1, 120: 1, 153: 1}, {110: -1, 123: -1, 120: 1, 111: 1}, {149: -1, 153: -1, 194: 1, 123: 1}, {194: -1, 153: -1, 149: 1, 200: 1}, {123: -1, 153: -1, 149: 1, 126: 1}, {194: -1, 200: -1, 257: 1, 153: 1}, {257: -1, 200: -1, 194: 1, 265: 1}, {153: -1, 200: -1, 194: 1, 157: 1}, {257: -1, 265: -1, 335: 1, 200: 1}, {335: -1, 265: -1, 257: 1, 344: 1}, {200: -1, 265: -1, 257: 1, 207: 1}, {335: -4, 344: 2, 265: 1, 2: 1}, {265: -1, 344: -1, 335: 1, 274: 1}, {344: -2, 335: 1, 354: 1}, {110: -1, 111: -1, 123: 1, 10: 1}, {123: -1, 111: -1, 110: 1, 126: 1}, {110: -1, 10: -1, 111: 1, 9: 1}, {111: -1, 10: -1, 110: 1, 11: 1}, {123: -1, 126: -1, 153: 1, 111: 1}, {153: -1, 126: -1, 123: 1, 157: 1}, {111: -1, 126: -1, 123: 1, 112: 1}, {153: -1, 157: -1, 200: 1, 126: 1}, {200: -1, 157: -1, 153: 1, 207: 1}, {126: -1, 157: -1, 153: 1, 129: 1}, {200: -1, 207: -1, 265: 1, 157: 1}, {265: -1, 207: -1, 200: 1, 274: 1}, {157: -1, 207: -1, 200: 1, 162: 1}, {265: -1, 274: -1, 344: 1, 207: 1}, {344: -1, 274: -1, 265: 1, 354: 1}, {207: -1, 274: -1, 265: 1, 213: 1}, {344: -5, 354: 3, 274: 1, 2: 1}, {274: -1, 354: -1, 344: 1, 283: 1}, {354: -2, 344: 1, 364: 1}, {111: -1, 112: -1, 126: 1, 11: 1}, {126: -1, 112: -1, 111: 1, 129: 1}, {111: -1, 11: -1, 112: 1, 10: 1}, {112: -1, 11: -1, 111: 1, 12: 1}, {126: -1, 129: -1, 157: 1, 112: 1}, {157: -1, 129: -1, 126: 1, 162: 1}, {112: -1, 129: -1, 126: 1, 113: 1}, {157: -1, 162: -1, 207: 1, 129: 1}, {207: -1, 162: -1, 157: 1, 213: 1}, {129: -1, 162: -1, 157: 1, 132: 1}, {207: -1, 213: -1, 274: 1, 162: 1}, {274: -1, 213: -1, 207: 1, 283: 1}, {162: -1, 213: -1, 207: 1, 167: 1}, {274: -1, 283: -1, 354: 1, 213: 1}, {354: -1, 283: -1, 274: 1, 364: 1}, {213: -1, 283: -1, 274: 1, 220: 1}, {354: -6, 364: 4, 283: 1, 2: 1}, {283: -1, 364: -1, 354: 1, 291: 1}, {364: -2, 354: 1, 373: 1}, {112: -1, 113: -1, 129: 1, 12: 1}, {129: -1, 113: -1, 112: 1, 132: 1}, {112: -1, 12: -1, 113: 1, 11: 1}, {113: -1, 12: -1, 112: 1, 13: 1}, {129: -1, 132: -1, 162: 1, 113: 1}, {162: -1, 132: -1, 129: 1, 167: 1}, {113: -1, 132: -1, 129: 1, 114: 1}, {162: -1, 167: -1, 213: 1, 132: 1}, {213: -1, 167: -1, 162: 1, 220: 1}, {132: -1, 167: -1, 162: 1, 135: 1}, {213: -1, 220: -1, 283: 1, 167: 1}, {283: -1, 220: -1, 213: 1, 291: 1}, {167: -1, 220: -1, 213: 1, 172: 1}, {283: -1, 291: -1, 364: 1, 220: 1}, {364: -1, 291: -1, 283: 1, 373: 1}, {220: -1, 291: -1, 283: 1, 227: 1}, {364: -7, 373: 5, 291: 1, 2: 1}, {291: -1, 373: -1, 364: 1, 300: 1}, {373: -2, 364: 1, 382: 1}, {113: -1, 114: -1, 132: 1, 13: 1}, {132: -1, 114: -1, 113: 1, 135: 1}, {113: -1, 13: -1, 114: 1, 12: 1}, {114: -1, 13: -1, 113: 1, 15: 1}, {132: -1, 135: -1, 167: 1, 114: 1}, {167: -1, 135: -1, 132: 1, 172: 1}, {114: -1, 135: -1, 132: 1, 115: 1}, {167: -1, 172: -1, 220: 1, 135: 1}, {220: -1, 172: -1, 167: 1, 227: 1}, {135: -1, 172: -1, 167: 1, 138: 1}, {220: -1, 227: -1, 291: 1, 172: 1}, {291: -1, 227: -1, 220: 1, 300: 1}, {172: -1, 227: -1, 220: 1, 177: 1}, {291: -1, 300: -1, 373: 1, 227: 1}, {373: -1, 300: -1, 291: 1, 382: 1}, {227: -1, 300: -1, 291: 1, 234: 1}, {373: -8, 382: 6, 300: 1, 2: 1}, {300: -1, 382: -1, 373: 1, 308: 1}, {382: -2, 373: 1, 391: 1}, {114: -1, 115: -1, 135: 1, 15: 1}, {135: -1, 115: -1, 114: 1, 138: 1}, {114: -1, 15: -1, 115: 1, 13: 1}, {115: -1, 15: -1, 114: 1, 16: 1}, {135: -1, 138: -1, 172: 1, 115: 1}, {172: -1, 138: -1, 135: 1, 177: 1}, {115: -1, 138: -1, 135: 1, 117: 1}, {172: -1, 177: -1, 227: 1, 138: 1}, {227: -1, 177: -1, 172: 1, 234: 1}, {138: -1, 177: -1, 172: 1, 142: 1}, {227: -1, 234: -1, 300: 1, 177: 1}, {300: -1, 234: -1, 227: 1, 308: 1}, {177: -1, 234: -1, 227: 1, 183: 1}, {300: -1, 308: -1, 382: 1, 234: 1}, {382: -1, 308: -1, 300: 1, 391: 1}, {234: -1, 308: -1, 300: 1, 242: 1}, {382: -9, 391: 7, 308: 1, 2: 1}, {308: -1, 391: -1, 382: 1, 317: 1}, {391: -2, 382: 1, 401: 1}, {115: -1, 117: -1, 138: 1, 16: 1}, {138: -1, 117: -1, 115: 1, 142: 1}, {115: -1, 16: -1, 117: 1, 15: 1}, {117: -1, 16: -1, 115: 1, 17: 1}, {138: -1, 142: -1, 177: 1, 117: 1}, {177: -1, 142: -1, 138: 1, 183: 1}, {117: -1, 142: -1, 138: 1, 119: 1}, {177: -1, 183: -1, 234: 1, 142: 1}, {234: -1, 183: -1, 177: 1, 242: 1}, {142: -1, 183: -1, 177: 1, 146: 1}, {234: -1, 242: -1, 308: 1, 183: 1}, {308: -1, 242: -1, 234: 1, 317: 1}, {183: -1, 242: -1, 234: 1, 189: 1}, {308: -1, 317: -1, 391: 1, 242: 1}, {391: -1, 317: -1, 308: 1, 401: 1}, {242: -1, 317: -1, 308: 1, 250: 1}, {391: -10, 401: 8, 317: 1, 2: 1}, {317: -1, 401: -1, 391: 1, 326: 1}, {401: -2, 391: 1, 412: 1}, {117: -1, 119: -1, 142: 1, 17: 1}, {142: -1, 119: -1, 117: 1, 146: 1}, {117: -1, 17: -1, 119: 1, 16: 1}, {119: -1, 17: -1, 117: 1, 18: 1}, {142: -1, 146: -1, 183: 1, 119: 1}, {183: -1, 146: -1, 142: 1, 189: 1}, {119: -1, 146: -1, 142: 1, 121: 1}, {183: -1, 189: -1, 242: 1, 146: 1}, {242: -1, 189: -1, 183: 1, 250: 1}, {146: -1, 189: -1, 183: 1, 151: 1}, {242: -1, 250: -1, 317: 1, 189: 1}, {317: -1, 250: -1, 242: 1, 326: 1}, {189: -1, 250: -1, 242: 1, 196: 1}, {317: -1, 326: -1, 401: 1, 250: 1}, {401: -1, 326: -1, 317: 1, 412: 1}, {250: -1, 326: -1, 317: 1, 259: 1}, {401: -11, 412: 9, 326: 1, 2: 1}, {326: -1, 412: -1, 401: 1, 336: 1}, {412: -2, 401: 1, 80: 1}, {119: -1, 121: -1, 146: 1, 18: 1}, {146: -1, 121: -1, 119: 1, 151: 1}, {119: -1, 18: -1, 121: 1, 17: 1}, {121: -1, 18: -1, 119: 1, 19: 1}, {146: -1, 151: -1, 189: 1, 121: 1}, {189: -1, 151: -1, 146: 1, 196: 1}, {121: -1, 151: -1, 146: 1, 124: 1}, {189: -1, 196: -1, 250: 1, 151: 1}, {250: -1, 196: -1, 189: 1, 259: 1}, {151: -1, 196: -1, 189: 1, 155: 1}, {250: -1, 259: -1, 326: 1, 196: 1}, {326: -1, 259: -1, 250: 1, 336: 1}, {196: -1, 259: -1, 250: 1, 202: 1}, {326: -1, 336: -1, 412: 1, 259: 1}, {412: -1, 336: -1, 326: 1, 80: 1}, {259: -1, 336: -1, 326: 1, 267: 1}, {412: -12, 80: 10, 336: 1, 2: 1}, {336: -1, 80: -1, 412: 1, 345: 1}, {121: -1, 124: -1, 151: 1, 19: 1}, {151: -1, 124: -1, 121: 1, 155: 1}, {121: -1, 19: -1, 124: 1, 18: 1}, {124: -1, 19: -1, 121: 1, 20: 1}, {151: -1, 155: -1, 196: 1, 124: 1}, {196: -1, 155: -1, 151: 1, 202: 1}, {124: -1, 155: -1, 151: 1, 127: 1}, {196: -1, 202: -1, 259: 1, 155: 1}, {259: -1, 202: -1, 196: 1, 267: 1}, {155: -1, 202: -1, 196: 1, 159: 1}, {259: -1, 267: -1, 336: 1, 202: 1}, {336: -1, 267: -1, 259: 1, 345: 1}, {202: -1, 267: -1, 259: 1, 209: 1}, {336: -1, 345: -1, 267: 1, 80: 1}, {267: -1, 345: -1, 336: 1, 276: 1}, {345: -2, 336: 1, 355: 1}, {124: -1, 127: -1, 155: 1, 20: 1}, {155: -1, 127: -1, 124: 1, 159: 1}, {124: -1, 20: -1, 127: 1, 19: 1}, {127: -1, 20: -1, 124: 1, 21: 1}, {155: -1, 159: -1, 202: 1, 127: 1}, {202: -1, 159: -1, 155: 1, 209: 1}, {127: -1, 159: -1, 155: 1, 130: 1}, {202: -1, 209: -1, 267: 1, 159: 1}, {267: -1, 209: -1, 202: 1, 276: 1}, {159: -1, 209: -1, 202: 1, 164: 1}, {267: -1, 276: -1, 345: 1, 209: 1}, {345: -1, 276: -1, 267: 1, 355: 1}, {209: -1, 276: -1, 267: 1, 215: 1}, {345: -2, 276: 1, 80: 1}, {276: -1, 355: -1, 345: 1, 285: 1}, {355: -2, 345: 1, 365: 1}, {127: -1, 130: -1, 159: 1, 21: 1}, {159: -1, 130: -1, 127: 1, 164: 1}, {127: -1, 21: -1, 130: 1, 20: 1}, {130: -1, 21: -1, 127: 1, 22: 1}, {159: -1, 164: -1, 209: 1, 130: 1}, {209: -1, 164: -1, 159: 1, 215: 1}, {130: -1, 164: -1, 159: 1, 133: 1}, {209: -1, 215: -1, 276: 1, 164: 1}, {276: -1, 215: -1, 209: 1, 285: 1}, {164: -1, 215: -1, 209: 1, 169: 1}, {276: -1, 285: -1, 355: 1, 215: 1}, {355: -1, 285: -1, 276: 1, 365: 1}, {215: -1, 285: -1, 276: 1, 222: 1}, {355: -3, 365: 1, 285: 1, 80: 1}, {285: -1, 365: -1, 355: 1, 293: 1}, {365: -2, 355: 1, 374: 1}, {130: -1, 133: -1, 164: 1, 22: 1}, {164: -1, 133: -1, 130: 1, 169: 1}, {130: -1, 22: -1, 133: 1, 21: 1}, {133: -1, 22: -1, 130: 1, 23: 1}, {164: -1, 169: -1, 215: 1, 133: 1}, {215: -1, 169: -1, 164: 1, 222: 1}, {133: -1, 169: -1, 164: 1, 136: 1}, {215: -1, 222: -1, 285: 1, 169: 1}, {285: -1, 222: -1, 215: 1, 293: 1}, {169: -1, 222: -1, 215: 1, 174: 1}, {285: -1, 293: -1, 365: 1, 222: 1}, {365: -1, 293: -1, 285: 1, 374: 1}, {222: -1, 293: -1, 285: 1, 229: 1}, {365: -4, 374: 2, 293: 1, 80: 1}, {293: -1, 374: -1, 365: 1, 302: 1}, {374: -2, 365: 1, 383: 1}, {133: -1, 136: -1, 169: 1, 23: 1}, {169: -1, 136: -1, 133: 1, 174: 1}, {133: -1, 23: -1, 136: 1, 22: 1}, {136: -1, 23: -1, 133: 1, 25: 1}, {169: -1, 174: -1, 222: 1, 136: 1}, {222: -1, 174: -1, 169: 1, 229: 1}, {136: -1, 174: -1, 169: 1, 139: 1}, {222: -1, 229: -1, 293: 1, 174: 1}, {293: -1, 229: -1, 222: 1, 302: 1}, {174: -1, 229: -1, 222: 1, 179: 1}, {293: -1, 302: -1, 374: 1, 229: 1}, {374: -1, 302: -1, 293: 1, 383: 1}, {229: -1, 302: -1, 293: 1, 236: 1}, {374: -5, 383: 3, 302: 1, 80: 1}, {302: -1, 383: -1, 374: 1, 310: 1}, {383: -2, 374: 1, 392: 1}, {136: -1, 139: -1, 174: 1, 25: 1}, {174: -1, 139: -1, 136: 1, 179: 1}, {136: -1, 25: -1, 139: 1, 23: 1}, {139: -1, 25: -1, 136: 1, 26: 1}, {174: -1, 179: -1, 229: 1, 139: 1}, {229: -1, 179: -1, 174: 1, 236: 1}, {139: -1, 179: -1, 174: 1, 143: 1}, {229: -1, 236: -1, 302: 1, 179: 1}, {302: -1, 236: -1, 229: 1, 310: 1}, {179: -1, 236: -1, 229: 1, 185: 1}, {302: -1, 310: -1, 383: 1, 236: 1}, {383: -1, 310: -1, 302: 1, 392: 1}, {236: -1, 310: -1, 302: 1, 244: 1}, {383: -6, 392: 4, 310: 1, 80: 1}, {310: -1, 392: -1, 383: 1, 319: 1}, {392: -2, 383: 1, 402: 1}, {139: -1, 143: -1, 179: 1, 26: 1}, {179: -1, 143: -1, 139: 1, 185: 1}, {139: -1, 26: -1, 143: 1, 25: 1}, {143: -1, 26: -1, 139: 1, 27: 1}, {179: -1, 185: -1, 236: 1, 143: 1}, {236: -1, 185: -1, 179: 1, 244: 1}, {143: -1, 185: -1, 179: 1, 147: 1}, {236: -1, 244: -1, 310: 1, 185: 1}, {310: -1, 244: -1, 236: 1, 319: 1}, {185: -1, 244: -1, 236: 1, 191: 1}, {310: -1, 319: -1, 392: 1, 244: 1}, {392: -1, 319: -1, 310: 1, 402: 1}, {244: -1, 319: -1, 310: 1, 252: 1}, {392: -7, 402: 5, 319: 1, 80: 1}, {319: -1, 402: -1, 392: 1, 328: 1}, {402: -2, 392: 1, 413: 1}, {143: -1, 147: -1, 185: 1, 27: 1}, {185: -1, 147: -1, 143: 1, 191: 1}, {143: -1, 27: -1, 147: 1, 26: 1}, {147: -1, 27: -1, 143: 1, 29: 1}, {185: -1, 191: -1, 244: 1, 147: 1}, {244: -1, 191: -1, 185: 1, 252: 1}, {147: -1, 191: -1, 185: 1, 152: 1}, {244: -1, 252: -1, 319: 1, 191: 1}, {319: -1, 252: -1, 244: 1, 328: 1}, {191: -1, 252: -1, 244: 1, 198: 1}, {319: -1, 328: -1, 402: 1, 252: 1}, {402: -1, 328: -1, 319: 1, 413: 1}, {252: -1, 328: -1, 319: 1, 261: 1}, {402: -8, 413: 6, 328: 1, 80: 1}, {328: -1, 413: -1, 402: 1, 338: 1}, {413: -2, 402: 1, 421: 1}, {147: -1, 152: -1, 191: 1, 29: 1}, {191: -1, 152: -1, 147: 1, 198: 1}, {147: -1, 29: -1, 152: 1, 27: 1}, {152: -1, 29: -1, 147: 1, 30: 1}, {191: -1, 198: -1, 252: 1, 152: 1}, {252: -1, 198: -1, 191: 1, 261: 1}, {152: -1, 198: -1, 191: 1, 156: 1}, {252: -1, 261: -1, 328: 1, 198: 1}, {328: -1, 261: -1, 252: 1, 338: 1}, {198: -1, 261: -1, 252: 1, 204: 1}, {328: -1, 338: -1, 413: 1, 261: 1}, {413: -1, 338: -1, 328: 1, 421: 1}, {261: -1, 338: -1, 328: 1, 269: 1}, {413: -9, 421: 7, 338: 1, 80: 1}, {338: -1, 421: -1, 413: 1, 347: 1}, {421: -2, 413: 1, 431: 1}, {152: -1, 156: -1, 198: 1, 30: 1}, {198: -1, 156: -1, 152: 1, 204: 1}, {152: -1, 30: -1, 156: 1, 29: 1}, {156: -1, 30: -1, 152: 1, 31: 1}, {198: -1, 204: -1, 261: 1, 156: 1}, {261: -1, 204: -1, 198: 1, 269: 1}, {156: -1, 204: -1, 198: 1, 160: 1}, {261: -1, 269: -1, 338: 1, 204: 1}, {338: -1, 269: -1, 261: 1, 347: 1}, {204: -1, 269: -1, 261: 1, 211: 1}, {338: -1, 347: -1, 421: 1, 269: 1}, {421: -1, 347: -1, 338: 1, 431: 1}, {269: -1, 347: -1, 338: 1, 278: 1}, {421: -10, 431: 8, 347: 1, 80: 1}, {347: -1, 431: -1, 421: 1, 357: 1}, {431: -2, 421: 1, 441: 1}, {156: -1, 160: -1, 204: 1, 31: 1}, {204: -1, 160: -1, 156: 1, 211: 1}, {156: -1, 31: -1, 160: 1, 30: 1}, {160: -1, 31: -1, 156: 1, 32: 1}, {204: -1, 211: -1, 269: 1, 160: 1}, {269: -1, 211: -1, 204: 1, 278: 1}, {160: -1, 211: -1, 204: 1, 165: 1}, {269: -1, 278: -1, 347: 1, 211: 1}, {347: -1, 278: -1, 269: 1, 357: 1}, {211: -1, 278: -1, 269: 1, 217: 1}, {347: -1, 357: -1, 431: 1, 278: 1}, {431: -1, 357: -1, 347: 1, 441: 1}, {278: -1, 357: -1, 347: 1, 287: 1}, {431: -11, 441: 9, 357: 1, 80: 1}, {357: -1, 441: -1, 431: 1, 367: 1}, {441: -2, 431: 1, 84: 1}, {160: -1, 165: -1, 211: 1, 32: 1}, {211: -1, 165: -1, 160: 1, 217: 1}, {160: -1, 32: -1, 165: 1, 31: 1}, {165: -1, 32: -1, 160: 1, 33: 1}, {211: -1, 217: -1, 278: 1, 165: 1}, {278: -1, 217: -1, 211: 1, 287: 1}, {165: -1, 217: -1, 211: 1, 170: 1}, {278: -1, 287: -1, 357: 1, 217: 1}, {357: -1, 287: -1, 278: 1, 367: 1}, {217: -1, 287: -1, 278: 1, 224: 1}, {357: -1, 367: -1, 441: 1, 287: 1}, {441: -1, 367: -1, 357: 1, 84: 1}, {287: -1, 367: -1, 357: 1, 295: 1}, {441: -12, 84: 10, 367: 1, 80: 1}, {367: -1, 84: -1, 441: 1, 376: 1}, {165: -1, 170: -1, 217: 1, 33: 1}, {217: -1, 170: -1, 165: 1, 224: 1}, {165: -1, 33: -1, 170: 1, 32: 1}, {170: -1, 33: -1, 165: 1, 34: 1}, {217: -1, 224: -1, 287: 1, 170: 1}, {287: -1, 224: -1, 217: 1, 295: 1}, {170: -1, 224: -1, 217: 1, 175: 1}, {287: -1, 295: -1, 367: 1, 224: 1}, {367: -1, 295: -1, 287: 1, 376: 1}, {224: -1, 295: -1, 287: 1, 231: 1}, {367: -1, 376: -1, 295: 1, 84: 1}, {295: -1, 376: -1, 367: 1, 304: 1}, {376: -2, 367: 1, 385: 1}, {170: -1, 175: -1, 224: 1, 34: 1}, {224: -1, 175: -1, 170: 1, 231: 1}, {170: -1, 34: -1, 175: 1, 33: 1}, {175: -1, 34: -1, 170: 1, 36: 1}, {224: -1, 231: -1, 295: 1, 175: 1}, {295: -1, 231: -1, 224: 1, 304: 1}, {175: -1, 231: -1, 224: 1, 180: 1}, {295: -1, 304: -1, 376: 1, 231: 1}, {376: -1, 304: -1, 295: 1, 385: 1}, {231: -1, 304: -1, 295: 1, 238: 1}, {376: -2, 304: 1, 84: 1}, {304: -1, 385: -1, 376: 1, 312: 1}, {385: -2, 376: 1, 394: 1}, {175: -1, 180: -1, 231: 1, 36: 1}, {231: -1, 180: -1, 175: 1, 238: 1}, {175: -1, 36: -1, 180: 1, 34: 1}, {180: -1, 36: -1, 175: 1, 37: 1}, {231: -1, 238: -1, 304: 1, 180: 1}, {304: -1, 238: -1, 231: 1, 312: 1}, {180: -1, 238: -1, 231: 1, 186: 1}, {304: -1, 312: -1, 385: 1, 238: 1}, {385: -1, 312: -1, 304: 1, 394: 1}, {238: -1, 312: -1, 304: 1, 246: 1}, {385: -3, 394: 1, 312: 1, 84: 1}, {312: -1, 394: -1, 385: 1, 321: 1}, {394: -2, 385: 1, 404: 1}, {180: -1, 186: -1, 238: 1, 37: 1}, {238: -1, 186: -1, 180: 1, 246: 1}, {180: -1, 37: -1, 186: 1, 36: 1}, {186: -1, 37: -1, 180: 1, 38: 1}, {238: -1, 246: -1, 312: 1, 186: 1}, {312: -1, 246: -1, 238: 1, 321: 1}, {186: -1, 246: -1, 238: 1, 192: 1}, {312: -1, 321: -1, 394: 1, 246: 1}, {394: -1, 321: -1, 312: 1, 404: 1}, {246: -1, 321: -1, 312: 1, 254: 1}, {394: -4, 404: 2, 321: 1, 84: 1}, {321: -1, 404: -1, 394: 1, 330: 1}, {404: -2, 394: 1, 415: 1}, {186: -1, 192: -1, 246: 1, 38: 1}, {246: -1, 192: -1, 186: 1, 254: 1}, {186: -1, 38: -1, 192: 1, 37: 1}, {192: -1, 38: -1, 186: 1, 39: 1}, {246: -1, 254: -1, 321: 1, 192: 1}, {321: -1, 254: -1, 246: 1, 330: 1}, {192: -1, 254: -1, 246: 1, 199: 1}, {321: -1, 330: -1, 404: 1, 254: 1}, {404: -1, 330: -1, 321: 1, 415: 1}, {254: -1, 330: -1, 321: 1, 263: 1}, {404: -5, 415: 3, 330: 1, 84: 1}, {330: -1, 415: -1, 404: 1, 340: 1}, {415: -2, 404: 1, 423: 1}, {192: -1, 199: -1, 254: 1, 39: 1}, {254: -1, 199: -1, 192: 1, 263: 1}, {192: -1, 39: -1, 199: 1, 38: 1}, {199: -1, 39: -1, 192: 1, 40: 1}, {254: -1, 263: -1, 330: 1, 199: 1}, {330: -1, 263: -1, 254: 1, 340: 1}, {199: -1, 263: -1, 254: 1, 205: 1}, {330: -1, 340: -1, 415: 1, 263: 1}, {415: -1, 340: -1, 330: 1, 423: 1}, {263: -1, 340: -1, 330: 1, 271: 1}, {415: -6, 423: 4, 340: 1, 84: 1}, {340: -1, 423: -1, 415: 1, 349: 1}, {423: -2, 415: 1, 433: 1}, {199: -1, 205: -1, 263: 1, 40: 1}, {263: -1, 205: -1, 199: 1, 271: 1}, {199: -1, 40: -1, 205: 1, 39: 1}, {205: -1, 40: -1, 199: 1, 42: 1}, {263: -1, 271: -1, 340: 1, 205: 1}, {340: -1, 271: -1, 263: 1, 349: 1}, {205: -1, 271: -1, 263: 1, 212: 1}, {340: -1, 349: -1, 423: 1, 271: 1}, {423: -1, 349: -1, 340: 1, 433: 1}, {271: -1, 349: -1, 340: 1, 280: 1}, {423: -7, 433: 5, 349: 1, 84: 1}, {349: -1, 433: -1, 423: 1, 359: 1}, {433: -2, 423: 1, 443: 1}, {205: -1, 212: -1, 271: 1, 42: 1}, {271: -1, 212: -1, 205: 1, 280: 1}, {205: -1, 42: -1, 212: 1, 40: 1}, {212: -1, 42: -1, 205: 1, 43: 1}, {271: -1, 280: -1, 349: 1, 212: 1}, {349: -1, 280: -1, 271: 1, 359: 1}, {212: -1, 280: -1, 271: 1, 218: 1}, {349: -1, 359: -1, 433: 1, 280: 1}, {433: -1, 359: -1, 349: 1, 443: 1}, {280: -1, 359: -1, 349: 1, 289: 1}, {433: -8, 443: 6, 359: 1, 84: 1}, {359: -1, 443: -1, 433: 1, 369: 1}, {443: -2, 433: 1, 450: 1}, {212: -1, 218: -1, 280: 1, 43: 1}, {280: -1, 218: -1, 212: 1, 289: 1}, {212: -1, 43: -1, 218: 1, 42: 1}, {218: -1, 43: -1, 212: 1, 44: 1}, {280: -1, 289: -1, 359: 1, 218: 1}, {359: -1, 289: -1, 280: 1, 369: 1}, {218: -1, 289: -1, 280: 1, 225: 1}, {359: -1, 369: -1, 443: 1, 289: 1}, {443: -1, 369: -1, 359: 1, 450: 1}, {289: -1, 369: -1, 359: 1, 297: 1}, {443: -9, 450: 7, 369: 1, 84: 1}, {369: -1, 450: -1, 443: 1, 378: 1}, {450: -2, 443: 1, 456: 1}, {218: -1, 225: -1, 289: 1, 44: 1}, {289: -1, 225: -1, 218: 1, 297: 1}, {218: -1, 44: -1, 225: 1, 43: 1}, {225: -1, 44: -1, 218: 1, 45: 1}, {289: -1, 297: -1, 369: 1, 225: 1}, {369: -1, 297: -1, 289: 1, 378: 1}, {225: -1, 297: -1, 289: 1, 232: 1}, {369: -1, 378: -1, 450: 1, 297: 1}, {450: -1, 378: -1, 369: 1, 456: 1}, {297: -1, 378: -1, 369: 1, 306: 1}, {450: -10, 456: 8, 378: 1, 84: 1}, {378: -1, 456: -1, 450: 1, 387: 1}, {456: -2, 450: 1, 464: 1}, {225: -1, 232: -1, 297: 1, 45: 1}, {297: -1, 232: -1, 225: 1, 306: 1}, {225: -1, 45: -1, 232: 1, 44: 1}, {232: -1, 45: -1, 225: 1, 47: 1}, {297: -1, 306: -1, 378: 1, 232: 1}, {378: -1, 306: -1, 297: 1, 387: 1}, {232: -1, 306: -1, 297: 1, 239: 1}, {378: -1, 387: -1, 456: 1, 306: 1}, {456: -1, 387: -1, 378: 1, 464: 1}, {306: -1, 387: -1, 378: 1, 314: 1}, {456: -11, 464: 9, 387: 1, 84: 1}, {387: -1, 464: -1, 456: 1, 396: 1}, {464: -2, 456: 1, 89: 1}, {232: -1, 239: -1, 306: 1, 47: 1}, {306: -1, 239: -1, 232: 1, 314: 1}, {232: -1, 47: -1, 239: 1, 45: 1}, {239: -1, 47: -1, 232: 1, 48: 1}, {306: -1, 314: -1, 387: 1, 239: 1}, {387: -1, 314: -1, 306: 1, 396: 1}, {239: -1, 314: -1, 306: 1, 247: 1}, {387: -1, 396: -1, 464: 1, 314: 1}, {464: -1, 396: -1, 387: 1, 89: 1}, {314: -1, 396: -1, 387: 1, 323: 1}, {464: -12, 89: 10, 396: 1, 84: 1}, {396: -1, 89: -1, 464: 1, 406: 1}, {239: -1, 247: -1, 314: 1, 48: 1}, {314: -1, 247: -1, 239: 1, 323: 1}, {239: -1, 48: -1, 247: 1, 47: 1}, {247: -1, 48: -1, 239: 1, 49: 1}, {314: -1, 323: -1, 396: 1, 247: 1}, {396: -1, 323: -1, 314: 1, 406: 1}, {247: -1, 323: -1, 314: 1, 255: 1}, {396: -1, 406: -1, 323: 1, 89: 1}, {323: -1, 406: -1, 396: 1, 332: 1}, {406: -2, 396: 1, 417: 1}, {247: -1, 255: -1, 323: 1, 49: 1}, {323: -1, 255: -1, 247: 1, 332: 1}, {247: -1, 49: -1, 255: 1, 48: 1}, {255: -1, 49: -1, 247: 1, 50: 1}, {323: -1, 332: -1, 406: 1, 255: 1}, {406: -1, 332: -1, 323: 1, 417: 1}, {255: -1, 332: -1, 323: 1, 264: 1}, {406: -2, 332: 1, 89: 1}, {332: -1, 417: -1, 406: 1, 342: 1}, {417: -2, 406: 1, 425: 1}, {255: -1, 264: -1, 332: 1, 50: 1}, {332: -1, 264: -1, 255: 1, 342: 1}, {255: -1, 50: -1, 264: 1, 49: 1}, {264: -1, 50: -1, 255: 1, 51: 1}, {332: -1, 342: -1, 417: 1, 264: 1}, {417: -1, 342: -1, 332: 1, 425: 1}, {264: -1, 342: -1, 332: 1, 272: 1}, {417: -3, 425: 1, 342: 1, 89: 1}, {342: -1, 425: -1, 417: 1, 351: 1}, {425: -2, 417: 1, 435: 1}, {264: -1, 272: -1, 342: 1, 51: 1}, {342: -1, 272: -1, 264: 1, 351: 1}, {264: -1, 51: -1, 272: 1, 50: 1}, {272: -1, 51: -1, 264: 1, 52: 1}, {342: -1, 351: -1, 425: 1, 272: 1}, {425: -1, 351: -1, 342: 1, 435: 1}, {272: -1, 351: -1, 342: 1, 281: 1}, {425: -4, 435: 2, 351: 1, 89: 1}, {351: -1, 435: -1, 425: 1, 361: 1}, {435: -2, 425: 1, 445: 1}, {272: -1, 281: -1, 351: 1, 52: 1}, {351: -1, 281: -1, 272: 1, 361: 1}, {272: -1, 52: -1, 281: 1, 51: 1}, {281: -1, 52: -1, 272: 1, 54: 1}, {351: -1, 361: -1, 435: 1, 281: 1}, {435: -1, 361: -1, 351: 1, 445: 1}, {281: -1, 361: -1, 351: 1, 290: 1}, {435: -5, 445: 3, 361: 1, 89: 1}, {361: -1, 445: -1, 435: 1, 371: 1}, {445: -2, 435: 1, 452: 1}, {281: -1, 290: -1, 361: 1, 54: 1}, {361: -1, 290: -1, 281: 1, 371: 1}, {281: -1, 54: -1, 290: 1, 52: 1}, {290: -1, 54: -1, 281: 1, 55: 1}, {361: -1, 371: -1, 445: 1, 290: 1}, {445: -1, 371: -1, 361: 1, 452: 1}, {290: -1, 371: -1, 361: 1, 298: 1}, {445: -6, 452: 4, 371: 1, 89: 1}, {371: -1, 452: -1, 445: 1, 380: 1}, {452: -2, 445: 1, 458: 1}, {290: -1, 298: -1, 371: 1, 55: 1}, {371: -1, 298: -1, 290: 1, 380: 1}, {290: -1, 55: -1, 298: 1, 54: 1}, {298: -1, 55: -1, 290: 1, 56: 1}, {371: -1, 380: -1, 452: 1, 298: 1}, {452: -1, 380: -1, 371: 1, 458: 1}, {298: -1, 380: -1, 371: 1, 307: 1}, {452: -7, 458: 5, 380: 1, 89: 1}, {380: -1, 458: -1, 452: 1, 389: 1}, {458: -2, 452: 1, 466: 1}, {298: -1, 307: -1, 380: 1, 56: 1}, {380: -1, 307: -1, 298: 1, 389: 1}, {298: -1, 56: -1, 307: 1, 55: 1}, {307: -1, 56: -1, 298: 1, 58: 1}, {380: -1, 389: -1, 458: 1, 307: 1}, {458: -1, 389: -1, 380: 1, 466: 1}, {307: -1, 389: -1, 380: 1, 315: 1}, {458: -8, 466: 6, 389: 1, 89: 1}, {389: -1, 466: -1, 458: 1, 398: 1}, {466: -2, 458: 1, 471: 1}, {307: -1, 315: -1, 389: 1, 58: 1}, {389: -1, 315: -1, 307: 1, 398: 1}, {307: -1, 58: -1, 315: 1, 56: 1}, {315: -1, 58: -1, 307: 1, 59: 1}, {389: -1, 398: -1, 466: 1, 315: 1}, {466: -1, 398: -1, 389: 1, 471: 1}, {315: -1, 398: -1, 389: 1, 324: 1}, {466: -9, 471: 7, 398: 1, 89: 1}, {398: -1, 471: -1, 466: 1, 408: 1}, {471: -2, 466: 1, 476: 1}, {315: -1, 324: -1, 398: 1, 59: 1}, {398: -1, 324: -1, 315: 1, 408: 1}, {315: -1, 59: -1, 324: 1, 58: 1}, {324: -1, 59: -1, 315: 1, 60: 1}, {398: -1, 408: -1, 471: 1, 324: 1}, {471: -1, 408: -1, 398: 1, 476: 1}, {324: -1, 408: -1, 398: 1, 333: 1}, {471: -10, 476: 8, 408: 1, 89: 1}, {408: -1, 476: -1, 471: 1, 419: 1}, {476: -2, 471: 1, 481: 1}, {324: -1, 333: -1, 408: 1, 60: 1}, {408: -1, 333: -1, 324: 1, 419: 1}, {324: -1, 60: -1, 333: 1, 59: 1}, {333: -1, 60: -1, 324: 1, 61: 1}, {408: -1, 419: -1, 476: 1, 333: 1}, {476: -1, 419: -1, 408: 1, 481: 1}, {333: -1, 419: -1, 408: 1, 343: 1}, {476: -11, 481: 9, 419: 1, 89: 1}, {419: -1, 481: -1, 476: 1, 427: 1}, {481: -2, 476: 1, 94: 1}, {333: -1, 343: -1, 419: 1, 61: 1}, {419: -1, 343: -1, 333: 1, 427: 1}, {333: -1, 61: -1, 343: 1, 60: 1}, {343: -1, 61: -1, 333: 1, 62: 1}, {419: -1, 427: -1, 481: 1, 343: 1}, {481: -1, 427: -1, 419: 1, 94: 1}, {343: -1, 427: -1, 419: 1, 352: 1}, {481: -12, 94: 10, 427: 1, 89: 1}, {427: -1, 94: -1, 481: 1, 437: 1}, {343: -1, 352: -1, 427: 1, 62: 1}, {427: -1, 352: -1, 343: 1, 437: 1}, {343: -1, 62: -1, 352: 1, 61: 1}, {352: -1, 62: -1, 343: 1, 63: 1}, {427: -1, 437: -1, 352: 1, 94: 1}, {352: -1, 437: -1, 427: 1, 362: 1}, {437: -2, 427: 1, 447: 1}, {352: -1, 362: -1, 437: 1, 63: 1}, {437: -1, 362: -1, 352: 1, 447: 1}, {352: -1, 63: -1, 362: 1, 62: 1}, {362: -1, 63: -1, 352: 1, 64: 1}, {437: -2, 362: 1, 94: 1}, {362: -1, 447: -1, 437: 1, 372: 1}, {447: -2, 437: 1, 454: 1}, {362: -1, 372: -1, 447: 1, 64: 1}, {447: -1, 372: -1, 362: 1, 454: 1}, {362: -1, 64: -1, 372: 1, 63: 1}, {372: -1, 64: -1, 362: 1, 65: 1}, {447: -3, 454: 1, 372: 1, 94: 1}, {372: -1, 454: -1, 447: 1, 381: 1}, {454: -2, 447: 1, 460: 1}, {372: -1, 381: -1, 454: 1, 65: 1}, {454: -1, 381: -1, 372: 1, 460: 1}, {372: -1, 65: -1, 381: 1, 64: 1}, {381: -1, 65: -1, 372: 1, 66: 1}, {454: -4, 460: 2, 381: 1, 94: 1}, {381: -1, 460: -1, 454: 1, 390: 1}, {460: -2, 454: 1, 468: 1}, {381: -1, 390: -1, 460: 1, 66: 1}, {460: -1, 390: -1, 381: 1, 468: 1}, {381: -1, 66: -1, 390: 1, 65: 1}, {390: -1, 66: -1, 381: 1, 68: 1}, {460: -5, 468: 3, 390: 1, 94: 1}, {390: -1, 468: -1, 460: 1, 399: 1}, {468: -2, 460: 1, 473: 1}, {390: -1, 399: -1, 468: 1, 68: 1}, {468: -1, 399: -1, 390: 1, 473: 1}, {390: -1, 68: -1, 399: 1, 66: 1}, {399: -1, 68: -1, 390: 1, 69: 1}, {468: -6, 473: 4, 399: 1, 94: 1}, {399: -1, 473: -1, 468: 1, 409: 1}, {473: -2, 468: 1, 478: 1}, {399: -1, 409: -1, 473: 1, 69: 1}, {473: -1, 409: -1, 399: 1, 478: 1}, {399: -1, 69: -1, 409: 1, 68: 1}, {409: -1, 69: -1, 399: 1, 70: 1}, {473: -7, 478: 5, 409: 1, 94: 1}, {409: -1, 478: -1, 473: 1, 420: 1}, {478: -2, 473: 1, 483: 1}, {409: -1, 420: -1, 478: 1, 70: 1}, {478: -1, 420: -1, 409: 1, 483: 1}, {409: -1, 70: -1, 420: 1, 69: 1}, {420: -1, 70: -1, 409: 1, 71: 1}, {478: -8, 483: 6, 420: 1, 94: 1}, {420: -1, 483: -1, 478: 1, 428: 1}, {483: -2, 478: 1, 486: 1}, {420: -1, 428: -1, 483: 1, 71: 1}, {483: -1, 428: -1, 420: 1, 486: 1}, {420: -1, 71: -1, 428: 1, 70: 1}, {428: -1, 71: -1, 420: 1, 72: 1}, {483: -9, 486: 7, 428: 1, 94: 1}, {428: -1, 486: -1, 483: 1, 438: 1}, {486: -2, 483: 1, 489: 1}, {428: -1, 438: -1, 486: 1, 72: 1}, {486: -1, 438: -1, 428: 1, 489: 1}, {428: -1, 72: -1, 438: 1, 71: 1}, {438: -1, 72: -1, 428: 1, 73: 1}, {486: -10, 489: 8, 438: 1, 94: 1}, {438: -1, 489: -1, 486: 1, 448: 1}, {489: -2, 486: 1, 491: 1}, {438: -1, 448: -1, 489: 1, 73: 1}, {489: -1, 448: -1, 438: 1, 491: 1}, {438: -1, 73: -1, 448: 1, 72: 1}, {448: -1, 73: -1, 438: 1, 74: 1}, {489: -11, 491: 9, 448: 1, 94: 1}, {448: -1, 491: -1, 489: 1, 455: 1}, {491: -2, 489: 1, 99: 1}, {448: -1, 455: -1, 491: 1, 74: 1}, {491: -1, 455: -1, 448: 1, 99: 1}, {448: -1, 74: -1, 455: 1, 73: 1}, {455: -1, 74: -1, 448: 1, 75: 1}, {491: -12, 99: 10, 455: 1, 94: 1}, {455: -1, 99: -1, 491: 1, 461: 1}, {455: -1, 461: -1, 99: 1, 75: 1}, {461: -2, 455: 1, 469: 1}, {455: -1, 75: -1, 461: 1, 74: 1}, {461: -1, 75: -1, 455: 1, 76: 1}, {461: -2, 99: 1, 76: 1}, {469: -2, 461: 1, 474: 1}, {461: -1, 76: -1, 469: 1, 75: 1}, {469: -1, 76: -1, 461: 1, 77: 1}, {469: -3, 474: 1, 99: 1, 77: 1}, {474: -2, 469: 1, 479: 1}, {469: -1, 77: -1, 474: 1, 76: 1}, {474: -1, 77: -1, 469: 1, 78: 1}, {474: -4, 479: 2, 99: 1, 78: 1}, {479: -2, 474: 1, 484: 1}, {474: -1, 78: -1, 479: 1, 77: 1}, {479: -1, 78: -1, 474: 1, 79: 1}, {479: -5, 484: 3, 99: 1, 79: 1}, {484: -2, 479: 1, 487: 1}, {479: -1, 79: -1, 484: 1, 78: 1}, {484: -1, 79: -1, 479: 1, 81: 1}, {484: -6, 487: 4, 99: 1, 81: 1}, {487: -2, 484: 1, 490: 1}, {484: -1, 81: -1, 487: 1, 79: 1}, {487: -1, 81: -1, 484: 1, 82: 1}, {487: -7, 490: 5, 99: 1, 82: 1}, {490: -2, 487: 1, 492: 1}, {487: -1, 82: -1, 490: 1, 81: 1}, {490: -1, 82: -1, 487: 1, 83: 1}, {490: -8, 492: 6, 99: 1, 83: 1}, {492: -2, 490: 1, 493: 1}, {490: -1, 83: -1, 492: 1, 82: 1}, {492: -1, 83: -1, 490: 1, 85: 1}, {492: -9, 493: 7, 99: 1, 85: 1}, {493: -2, 492: 1, 494: 1}, {492: -1, 85: -1, 493: 1, 83: 1}, {493: -1, 85: -1, 492: 1, 87: 1}, {493: -10, 494: 8, 99: 1, 87: 1}, {494: -2, 493: 1, 495: 1}, {493: -1, 87: -1, 494: 1, 85: 1}, {494: -1, 87: -1, 493: 1, 88: 1}, {494: -11, 495: 9, 99: 1, 88: 1}, {495: -2, 494: 1, 103: 1}, {494: -1, 88: -1, 495: 1, 87: 1}, {495: -1, 88: -1, 494: 1, 90: 1}, {495: -12, 103: 10, 99: 1, 90: 1}, {495: -1, 90: -1, 88: 1, 103: 1}, {90: -1, 103: -1, 495: 1, 91: 1}, {106: -2, 5: 1, 105: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {463: -2, 89: 1, 86: 1}, {480: -1, 89: -1, 463: 1, 94: 1}, {463: -1, 89: -1, 480: 1, 84: 1}, {480: -2, 463: 1, 97: 1}, {463: -3, 86: 1, 480: 1, 84: 1}, {480: -3, 97: 1, 94: 1, 86: 1}, {480: -1, 94: -1, 97: 1, 89: 1}, {97: -1, 94: -1, 480: 1, 99: 1}, {86: -1, 84: -1, 463: 1, 440: 1}, {440: -2, 86: 1, 80: 1}, {440: -2, 430: 1, 84: 1}, {430: -3, 86: 1, 440: 1, 3: 1}, {430: -1, 80: -1, 440: 1, 411: 1}, {411: -2, 400: 1, 80: 1}, {400: -2, 411: 1, 3: 1}, {411: -2, 430: 1, 2: 1}, {430: -2, 400: 1, 86: 1}, {400: -4, 3: 2, 430: 1, 2: 1}, {103: -2, 5: 1, 99: 1}, {99: -2, 103: 1, 94: 1}, {299: -3, 4: 1, 3: 1, 41: 1}, {299: -2, 4: 1, 53: 1}, {299: -1, 41: -1, 4: 1, 28: 1}, {53: -2, 3: 1, 28: 1}, {299: -1, 28: -1, 41: 1, 53: 1}, {41: -1, 28: -1, 299: 1, 1: 1}, {206: -2, 4: 1, 24: 1}, {206: -3, 4: 1, 273: 1, 14: 1}, {273: -2, 206: 1, 353: 1}, {206: -1, 24: -1, 273: 1, 14: 1}, {273: -1, 24: -1, 206: 1, 35: 1}, {4: -1, 14: -1, 206: 1, 41: 1}, {273: -3, 353: 1, 4: 1, 35: 1}, {353: -3, 4: 1, 273: 1, 2: 1}, {273: -1, 35: -1, 353: 1, 24: 1}, {353: -1, 35: -1, 273: 1, 46: 1}, {353: -2, 4: 1, 67: 1}, {67: -2, 2: 1, 57: 1}, {46: -2, 35: 1, 57: 1}, {57: -2, 46: 1, 67: 1}, {41: -2, 1: 1, 4: 1}, {161: -2, 4: 1, 7: 1}, {161: -2, 166: 1, 41: 1}, {166: -2, 161: 1, 171: 1}, {161: -1, 7: -1, 166: 1, 6: 1}, {166: -1, 7: -1, 161: 1, 8: 1}, {161: -1, 41: -1, 4: 1, 6: 1}, {161: -1, 6: -1, 41: 1, 7: 1}, {41: -1, 6: -1, 161: 1, 1: 1}, {166: -3, 171: 1, 4: 1, 8: 1}, {171: -2, 166: 1, 176: 1}, {166: -1, 8: -1, 171: 1, 7: 1}, {171: -1, 8: -1, 166: 1, 9: 1}, {171: -4, 176: 2, 4: 1, 9: 1}, {176: -2, 171: 1, 182: 1}, {171: -1, 9: -1, 176: 1, 8: 1}, {176: -1, 9: -1, 171: 1, 10: 1}, {176: -5, 182: 3, 4: 1, 10: 1}, {182: -2, 176: 1, 188: 1}, {176: -1, 10: -1, 182: 1, 9: 1}, {182: -1, 10: -1, 176: 1, 11: 1}, {182: -6, 188: 4, 4: 1, 11: 1}, {188: -2, 182: 1, 195: 1}, {182: -1, 11: -1, 188: 1, 10: 1}, {188: -1, 11: -1, 182: 1, 12: 1}, {188: -7, 195: 5, 4: 1, 12: 1}, {195: -2, 188: 1, 201: 1}, {188: -1, 12: -1, 195: 1, 11: 1}, {195: -1, 12: -1, 188: 1, 13: 1}, {195: -8, 201: 6, 4: 1, 13: 1}, {201: -2, 195: 1, 208: 1}, {195: -1, 13: -1, 201: 1, 12: 1}, {201: -1, 13: -1, 195: 1, 15: 1}, {201: -9, 208: 7, 4: 1, 15: 1}, {208: -2, 201: 1, 214: 1}, {201: -1, 15: -1, 208: 1, 13: 1}, {208: -1, 15: -1, 201: 1, 16: 1}, {208: -10, 214: 8, 4: 1, 16: 1}, {214: -2, 208: 1, 221: 1}, {208: -1, 16: -1, 214: 1, 15: 1}, {214: -1, 16: -1, 208: 1, 17: 1}, {214: -11, 221: 9, 4: 1, 17: 1}, {221: -2, 214: 1, 228: 1}, {214: -1, 17: -1, 221: 1, 16: 1}, {221: -1, 17: -1, 214: 1, 18: 1}, {221: -12, 228: 10, 4: 1, 18: 1}, {228: -2, 221: 1, 235: 1}, {221: -1, 18: -1, 228: 1, 17: 1}, {228: -1, 18: -1, 221: 1, 19: 1}, {228: -13, 235: 11, 4: 1, 19: 1}, {235: -2, 228: 1, 243: 1}, {228: -1, 19: -1, 235: 1, 18: 1}, {235: -1, 19: -1, 228: 1, 20: 1}, {235: -14, 243: 12, 4: 1, 20: 1}, {243: -2, 235: 1, 251: 1}, {235: -1, 20: -1, 243: 1, 19: 1}, {243: -1, 20: -1, 235: 1, 21: 1}, {243: -15, 251: 13, 4: 1, 21: 1}, {251: -2, 243: 1, 260: 1}, {243: -1, 21: -1, 251: 1, 20: 1}, {251: -1, 21: -1, 243: 1, 22: 1}, {251: -16, 260: 14, 4: 1, 22: 1}, {260: -2, 251: 1, 268: 1}, {251: -1, 22: -1, 260: 1, 21: 1}, {260: -1, 22: -1, 251: 1, 23: 1}, {260: -17, 268: 15, 4: 1, 23: 1}, {268: -2, 260: 1, 277: 1}, {260: -1, 23: -1, 268: 1, 22: 1}, {268: -1, 23: -1, 260: 1, 25: 1}, {268: -18, 277: 16, 4: 1, 25: 1}, {277: -2, 268: 1, 286: 1}, {268: -1, 25: -1, 277: 1, 23: 1}, {277: -1, 25: -1, 268: 1, 26: 1}, {277: -19, 286: 17, 4: 1, 26: 1}, {286: -2, 277: 1, 294: 1}, {277: -1, 26: -1, 286: 1, 25: 1}, {286: -1, 26: -1, 277: 1, 27: 1}, {286: -20, 294: 18, 4: 1, 27: 1}, {294: -2, 286: 1, 303: 1}, {286: -1, 27: -1, 294: 1, 26: 1}, {294: -1, 27: -1, 286: 1, 29: 1}, {294: -21, 303: 19, 4: 1, 29: 1}, {303: -2, 294: 1, 311: 1}, {294: -1, 29: -1, 303: 1, 27: 1}, {303: -1, 29: -1, 294: 1, 30: 1}, {303: -22, 311: 20, 4: 1, 30: 1}, {311: -2, 303: 1, 320: 1}, {303: -1, 30: -1, 311: 1, 29: 1}, {311: -1, 30: -1, 303: 1, 31: 1}, {311: -23, 320: 21, 4: 1, 31: 1}, {320: -2, 311: 1, 329: 1}, {311: -1, 31: -1, 320: 1, 30: 1}, {320: -1, 31: -1, 311: 1, 32: 1}, {320: -24, 329: 22, 4: 1, 32: 1}, {329: -2, 320: 1, 339: 1}, {320: -1, 32: -1, 329: 1, 31: 1}, {329: -1, 32: -1, 320: 1, 33: 1}, {329: -25, 339: 23, 4: 1, 33: 1}, {339: -2, 329: 1, 348: 1}, {329: -1, 33: -1, 339: 1, 32: 1}, {339: -1, 33: -1, 329: 1, 34: 1}, {339: -26, 348: 24, 4: 1, 34: 1}, {348: -2, 339: 1, 358: 1}, {339: -1, 34: -1, 348: 1, 33: 1}, {348: -1, 34: -1, 339: 1, 36: 1}, {348: -27, 358: 25, 4: 1, 36: 1}, {358: -2, 348: 1, 368: 1}, {348: -1, 36: -1, 358: 1, 34: 1}, {358: -1, 36: -1, 348: 1, 37: 1}, {358: -28, 368: 26, 4: 1, 37: 1}, {368: -2, 358: 1, 377: 1}, {358: -1, 37: -1, 368: 1, 36: 1}, {368: -1, 37: -1, 358: 1, 38: 1}, {368: -29, 377: 27, 4: 1, 38: 1}, {377: -2, 368: 1, 386: 1}, {368: -1, 38: -1, 377: 1, 37: 1}, {377: -1, 38: -1, 368: 1, 39: 1}, {377: -30, 386: 28, 4: 1, 39: 1}, {386: -2, 377: 1, 395: 1}, {377: -1, 39: -1, 386: 1, 38: 1}, {386: -1, 39: -1, 377: 1, 40: 1}, {386: -31, 395: 29, 4: 1, 40: 1}, {395: -2, 386: 1, 405: 1}, {386: -1, 40: -1, 395: 1, 39: 1}, {395: -1, 40: -1, 386: 1, 42: 1}, {395: -32, 405: 30, 4: 1, 42: 1}, {405: -2, 395: 1, 416: 1}, {395: -1, 42: -1, 405: 1, 40: 1}, {405: -1, 42: -1, 395: 1, 43: 1}, {405: -33, 416: 31, 4: 1, 43: 1}, {416: -2, 405: 1, 424: 1}, {405: -1, 43: -1, 416: 1, 42: 1}, {416: -1, 43: -1, 405: 1, 44: 1}, {416: -34, 424: 32, 4: 1, 44: 1}, {424: -2, 416: 1, 434: 1}, {416: -1, 44: -1, 424: 1, 43: 1}, {424: -1, 44: -1, 416: 1, 45: 1}, {424: -35, 434: 33, 4: 1, 45: 1}, {434: -2, 424: 1, 444: 1}, {424: -1, 45: -1, 434: 1, 44: 1}, {434: -1, 45: -1, 424: 1, 47: 1}, {434: -36, 444: 34, 4: 1, 47: 1}, {444: -2, 434: 1, 451: 1}, {434: -1, 47: -1, 444: 1, 45: 1}, {444: -1, 47: -1, 434: 1, 48: 1}, {444: -37, 451: 35, 4: 1, 48: 1}, {451: -2, 444: 1, 457: 1}, {444: -1, 48: -1, 451: 1, 47: 1}, {451: -1, 48: -1, 444: 1, 49: 1}, {451: -38, 457: 36, 4: 1, 49: 1}, {457: -2, 451: 1, 465: 1}, {451: -1, 49: -1, 457: 1, 48: 1}, {457: -1, 49: -1, 451: 1, 50: 1}, {457: -39, 465: 37, 4: 1, 50: 1}, {465: -2, 457: 1, 470: 1}, {457: -1, 50: -1, 465: 1, 49: 1}, {465: -1, 50: -1, 457: 1, 51: 1}, {465: -40, 470: 38, 4: 1, 51: 1}, {470: -2, 465: 1, 475: 1}, {465: -1, 51: -1, 470: 1, 50: 1}, {470: -1, 51: -1, 465: 1, 52: 1}, {470: -41, 475: 39, 4: 1, 52: 1}, {475: -2, 470: 1, 92: 1}, {470: -1, 52: -1, 475: 1, 51: 1}, {475: -1, 52: -1, 470: 1, 54: 1}, {475: -42, 92: 40, 4: 1, 54: 1}, {475: -1, 54: -1, 52: 1, 92: 1}, {54: -1, 92: -1, 475: 1, 55: 1}, {106: -2, 5: 1, 105: 1}, {55: -2, 54: 1, 56: 1}, {56: -2, 55: 1, 58: 1}, {58: -2, 56: 1, 59: 1}, {59: -2, 58: 1, 60: 1}, {60: -2, 59: 1, 61: 1}, {61: -2, 60: 1, 62: 1}, {62: -2, 61: 1, 63: 1}, {63: -2, 62: 1, 64: 1}, {64: -2, 63: 1, 65: 1}, {65: -2, 64: 1, 66: 1}, {66: -2, 65: 1, 68: 1}, {68: -2, 66: 1, 69: 1}, {69: -2, 68: 1, 70: 1}, {70: -2, 69: 1, 71: 1}, {71: -2, 70: 1, 72: 1}, {72: -2, 71: 1, 73: 1}, {73: -2, 72: 1, 74: 1}, {74: -2, 73: 1, 75: 1}, {75: -2, 74: 1, 76: 1}, {76: -2, 75: 1, 77: 1}, {77: -2, 76: 1, 78: 1}, {78: -2, 77: 1, 79: 1}, {79: -2, 78: 1, 81: 1}, {81: -2, 79: 1, 82: 1}, {82: -2, 81: 1, 83: 1}, {83: -2, 82: 1, 85: 1}, {85: -2, 83: 1, 87: 1}, {87: -2, 85: 1, 88: 1}, {88: -2, 87: 1, 90: 1}, {90: -2, 88: 1, 91: 1}, {91: -2, 90: 1, 93: 1}, {93: -2, 91: 1, 95: 1}, {95: -2, 93: 1, 96: 1}, {96: -2, 95: 1, 98: 1}, {98: -2, 96: 1, 100: 1}, {100: -2, 98: 1, 101: 1}, {101: -2, 100: 1, 102: 1}, {102: -2, 101: 1, 104: 1}, {104: -2, 102: 1, 105: 1}, {105: -2, 104: 1, 106: 1}, {429: -2, 4: 1, 86: 1}, {429: -3, 4: 1, 3: 1, 92: 1}, {429: -1, 86: -1, 3: 1, 92: 1}, {86: -1, 92: -1, 429: 1, 97: 1}, {97: -2, 5: 1, 86: 1}, {462: 1, 439: -3, 4: 1, 84: 1}, {462: -2, 439: 1, 92: 1}, {439: -2, 462: 1, 410: 1}, {462: -1, 84: -1, 439: 1, 89: 1}, {439: -1, 84: -1, 462: 1, 80: 1}, {462: -4, 92: 2, 4: 1, 89: 1}, {462: -1, 89: -1, 92: 1, 84: 1}, {89: -1, 92: -1, 462: 1, 94: 1}, {410: -2, 4: 1, 80: 1}, {410: -3, 4: 1, 439: 1, 2: 1}, {439: -1, 80: -1, 410: 1, 84: 1}, {410: -1, 80: -1, 439: 1, 2: 1}, {103: -2, 5: 1, 99: 1}, {99: -2, 103: 1, 94: 1}, {94: -2, 99: 1, 89: 1}];

    # Find the difference between the two sets of inequalities
    H0minus1 = [h for h in H0_sparse if (h not in H1_sparse)];
    H1minus0 = [h for h in H1_sparse if (h not in H0_sparse)];

    H0minus1ind = [i for i,h in enumerate(H0_sparse) if (h not in H1_sparse)];
    H1minus0ind = [i for i,h in enumerate(H1_sparse) if (h not in H0_sparse)];

    # Init timing
    # -----------
    cumtime, reltime = [], [];

    cumtime.append([]);
    reltime.append([]);
    t0 = time.time();
    cumtime[-1].append([0,'start problem 1']);

    # Create a new model
    # ------------------
    m = gp.Model();
    cumtime[-1].append([time.time()-t0,'defined model']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'defined model']);

    # Create variables
    var = [];
    for i in range(680):
        var.append(m.addVar(name=f"x_{i}"));
    cumtime[-1].append([time.time()-t0,'added variables']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'added variables']);

    # Set objective function
    m.setObjective(sum(var), gp.GRB.MINIMIZE)
    cumtime[-1].append([time.time()-t0,'set objective']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'set objective']);

    # Add constraints
    eps=1;
    cons = [];
    for h in H0_sparse:
        cons.append(m.addConstr(sum([coeff*var[i] for i,coeff in h.items()])>=eps));
    cumtime[-1].append([time.time()-t0,'added constraints']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'added constraints']);

    # Solve it!
    m.optimize();
    x_sol = [v.X for v in var];
    cumtime[-1].append([time.time()-t0,'solved 1st problem']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'solved 1st problem']);
    t1st_gurobi = cumtime[-1][-1][0];

    # Solve related problem
    # ---------------------
    cumtime.append([]);
    reltime.append([]);
    t0 = time.time();
    cumtime[-1].append([0,'start problem 2']);

    m.remove([cons[i] for i in H0minus1ind]);

    cumtime[-1].append([time.time()-t0,'removed old constraints']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'removed old constraints']);

    cons.append([m.addConstr(sum([coeff*var[i] for i,coeff in h.items()])>=eps) for h in H1minus0]);
    cumtime[-1].append([time.time()-t0,'added new constraints']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'added new constraints']);

    # Solve it!
    m.optimize();
    x_sol = [v.X for v in var];
    cumtime[-1].append([time.time()-t0,'solved 2nd problem']);
    reltime[-1].append([cumtime[-1][-1][0]-cumtime[-1][-2][0],'solved 2nd problem']);
    t2nd_gurobi = cumtime[-1][-1][0];

    # Print results
    # -------------
    print('\n');
    print('results');
    print('-------');
    print('1st solve:');
    print(cumtime[0]);
    print('\n');
    print('2nd solve:');
    print(cumtime[1]);
    0
  • Jaromił Najman
    Gurobi Staff Gurobi Staff

    Hi Nate,

    In the future, is there a way to upload this as a file?

    Uploading files in the Community Forum is not possible but we discuss an alternative in Posting to the Community Forum.

    I have not heard of either the parameter tuning tool or LPWarmStart. I imagine that the default value of 1 would be a good choice, but I should experiment with setting LPWarmStart=2. Thank you very much for those references!

    Given the size of the model you posted, I don't think there is much to get here.

    There are a few slight tweaks that you might want to consider.

    Use the addVars method instead of adding each variable one by one. Use gurobipy.quicksum instead of Python's sum method.

    var = m.addVars(680,name="x")

    m.setObjective(gp.quicksum(var), gp.GRB.MINIMIZE)

    cons = [];
    for h in H0_sparse:
        cons.append(m.addConstr(gp.quicksum(coeff*var[i] for i,coeff in h.items())>=eps))

    Instead of reading each variable solution value one by one, you can get all at once.

    x_sol = m.getAttr("X",var)

    Regarding the modified model. The good news is that Gurobi already picks up the previous solution as warm start. This is the reason why it only needs 10 iterations, so there should be no need for you to do something here.

    Right now you are removing some constraints and then adding new ones. You could try just changing the coefficients of variables in a given constraints, i.e., instead of removing the constraints, try to re-use them by adjusting the variable coefficients accordingly. It might be possible that you would have to add more constraints than you would have to remove. If you know a priori how many constraints you would have at most, then you could add redundant constraints and only change coefficients on those. However, I don't think that this would give any significant boost, given the already extremely low runtime. It might very likely be that the most significant part of the time is spent from translating from Python to C. Thus, I thin, that if you really want to squeeze out the last little bit of model construction/modification performance, you should switch from Python to C.

    Best regards, 
    Jaromił

    0

Please sign in to leave a comment.