def METHOD_NAME(self, dct):
    hit_policy = dct.get('hit_policy', HitPolicy.UNIQUE.value)
    table = DecisionTable(dct['id'], dct['name'], hit_policy)
    table.inputs = [ Input(**val) for val in dct['inputs'] ]
    table.outputs = [ Output(**val) for val in dct['outputs'] ]
    table.rules = [ self.rule_from_dict(rule, table.inputs, table.outputs)
                    for rule in dct['rules'] ]
    return table