Probably this class should be marked as abstract.