public Task <Contract> CreateContract(
     string templateId,
     Part[] parts,
     Parameter[] parameters,
     ContractVisibility visibility,
     ContractParts partsMode,
     Duration duration,
     Duration archiveRequired,
     Duration archiveOptional,
     DateTime?signAfter,
     DateTime?signBefore,
     bool canActAsTemplate)
 {
     AssertContractsIsAvailable();
     return(contractsClient.CreateContractAsync(templateId, parts, parameters, visibility, partsMode, duration, archiveRequired, archiveOptional, signAfter, signBefore, canActAsTemplate));
 }