contract splitting
-