def serialized(self):
        to_ret = {}
        for group, requirements in self.items():
            to_ret[group] = [str(requirement) for requirement in requirements]
        return to_ret
def paint(self, c):
		self.leaf.paint(c)
		if self.lchild != None:
			self.lchild.paint(c)
		if self.rchild != None:
			self.rchild.paint(c)