Fixed Some bugs with the abstraction