Added 'abstract' to the class because doExecute() is abstract, too.