partition general version