# webpbn.com Puzzle #529: Swing
# Copyright 2006 by Jan Wolter
#
rows = 45
row_rule_len = 14
row_rules = [
    [0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 1, 1, 1, 1],
    [0, 3, 1, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 2],
    [1, 1, 1, 3, 1, 4, 1, 4, 1, 5, 1, 5, 1, 2],
    [0, 0, 0, 0, 0, 2, 1, 2, 1, 1, 1, 1, 6, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 30, 1, 5],
    [0, 0, 0, 0, 0, 1, 5, 8, 1, 1, 7, 1, 1, 3],
    [0, 0, 0, 0, 0, 0, 0, 3, 4, 8, 1, 5, 1, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 20, 6, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 7, 2, 5, 1],
    [0, 0, 0, 0, 0, 3, 3, 1, 1, 9, 1, 1, 5, 6],
    [0, 0, 0, 0, 0, 0, 0, 2, 3, 8, 1, 3, 4, 2],
    [0, 0, 0, 0, 0, 0, 0, 5, 3, 1, 10, 4, 5, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3, 8, 4, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 11, 10],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 3, 10, 7],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 1, 7, 12, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 1, 4, 11, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 4, 1, 2, 1, 11, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1, 2, 9],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 2, 1, 4, 11],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 1, 2, 6, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 2, 4, 8, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 2, 16, 1],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 15, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 15, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 13, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 12, 9],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 9, 10],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 17, 7, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 8, 3, 8, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 6, 3, 8, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 4, 5, 4, 7, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 5, 5, 4, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 4, 5, 4, 9],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 6, 4, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 4, 3, 6, 4, 3, 2],
    [0, 0, 0, 0, 0, 0, 0, 2, 1, 2, 7, 4, 4, 2],
    [0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 9, 5, 5, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 10, 6, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 2, 1, 9, 18],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 4, 23],
    [0, 0, 0, 0, 0, 1, 2, 1, 2, 2, 1, 1, 1, 2],
    [0, 0, 2, 1, 4, 2, 1, 4, 1, 5, 1, 3, 1, 2],
    [0, 0, 0, 2, 1, 5, 4, 4, 1, 5, 1, 3, 1, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 10, 1, 1, 1]
    ]

cols = 45
col_rule_len = 14
col_rules = [
    [0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 1, 1, 1, 1],
    [0, 2, 2, 4, 1, 4, 1, 5, 1, 4, 1, 4, 1, 2],
    [0, 0, 0, 0, 3, 1, 4, 1, 4, 1, 14, 4, 1, 2],
    [0, 0, 0, 0, 0, 0, 1, 1, 5, 1, 2, 3, 4, 1],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 13, 1, 10],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 9, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 2, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 4, 1, 4],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 8, 3, 2, 5, 3],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 1, 3, 7, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 8, 6, 2, 8, 1, 2],
    [0, 0, 0, 0, 0, 0, 0, 1, 1, 2, 2, 8, 1, 1],
    [0, 0, 0, 2, 1, 1, 1, 2, 1, 3, 1, 3, 3, 1],
    [0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 5, 4, 2, 1],
    [0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 7, 2, 1],
    [0, 0, 0, 0, 0, 0, 2, 1, 1, 2, 9, 1, 2, 1],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 6, 12, 1, 3],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 13, 3, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 21, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 13, 23],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 14, 19],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 14, 20, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 13, 7, 2, 8, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 8, 1, 7, 2],
    [0, 0, 0, 0, 0, 5, 1, 1, 1, 2, 8, 1, 5, 2],
    [0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 9, 1, 1, 4],
    [0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 6, 1, 3, 5],
    [0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 5, 6, 2],
    [0, 0, 0, 0, 0, 0, 2, 1, 3, 1, 3, 7, 3, 2],
    [0, 0, 0, 0, 0, 2, 3, 2, 1, 1, 2, 4, 4, 2],
    [0, 0, 0, 0, 0, 2, 2, 1, 1, 2, 3, 1, 8, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 3, 1, 7, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 4, 1, 6, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 4, 1, 2, 5],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 6, 6, 5, 6],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 6, 3],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 10, 8, 4, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 11, 9, 5, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 12, 16, 2],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 12, 16],
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 2, 13, 21],
    [0, 0, 0, 0, 0, 0, 0, 0, 6, 1, 3, 3, 1, 1],
    [5, 1, 3, 1, 3, 1, 1, 2, 1, 4, 1, 3, 1, 3],
    [0, 5, 1, 3, 1, 3, 1, 4, 1, 4, 1, 3, 1, 3],
    [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1]
    ]
