private CompilationUnitSyntax AddUsingDirectives(CompilationUnitSyntax root)
        {
            var hasStaticImport = root.HasStaticUsingOf(Helpers.ContractClassName);

            var newUnit = hasStaticImport
                                ? root
                                : root.AddUsingIfNotExists(typeof(Contract).Namespace);

            return(_provider
                   .GetImportNamespaces(_parameter)
                   .Aggregate(
                       newUnit,
                       (node, import) => node.AddUsingIfNotExists(import)));
        }