split contract into several resources