abstract class; remove uneeded spaces