Implemented abstract methods (seem to break backward compat with some plugins?)