A lot of code moved to the abstract class. However, I would really like to move there a little bit more