that could be done by partial