def to_pickle(self, file_name=None):
        if file_name is None:
            return pickle.dumps(self)
        else:
            pickle.dump(self, open(file_name, 'wb'))