apply void and abstract