/// <summary>
 /// Получить сохраненные подписи
 /// </summary>
 private static IResultAppCollection <ISignatureFileApp> GetSignaturesFileApp(IResultAppValue <IReadOnlyCollection <ISignatureFileData> > signatures,
                                                                              IList <SignatureFileRequest> signaturesFileRequest,
                                                                              ISignatureConverter signatureConverter, string signatureFolder) =>
 signatures.
 ResultValueOk(signaturesFileData => signaturesFileRequest.
               Join(signaturesFileData,
                    signatureFileRequest => signatureFileRequest.PersonId,
                    signatureFileData => signatureFileData.PersonId,
                    (signatureFileRequest, signatureFileData) => RotateSignature(signatureFileData, signatureFileRequest))).
 ResultValueOkBind(signaturesFileData => signatureConverter.ToSignaturesFile(signaturesFileData, signatureFolder).
                   ResultValueOk(signatureFiles => signatureFiles.ToApplication()).
                   ToResultValueApplication()).
 ToResultCollection();
 public static Func <IList <SignatureFileRequest>, IResultAppCollection <ISignatureFileApp> > GetSignaturesSync(IResultCollection <ISignatureFile> signatureFile,
                                                                                                                ISignatureConverter signatureConverter, string signatureFolder) =>
 signaturesFileRequest =>
 signaturesFileRequest.
 Select(signatureRequest => signatureRequest.PersonId).
 Map(ids => signatureFile.ResultValueOk(signatures => signatures.Where(signature => ids.Contains(signature.PersonId)))).
 ResultValueOk(signatureConverter.FromSignaturesFile).
 ToResultValueApplication().
 Map(signatures => GetSignaturesFileApp(signatures, signaturesFileRequest, signatureConverter, signatureFolder));
        /// <summary>
        /// Получить подписи по идентификаторам синхронно
        /// </summary>

        private static Func <IList <SignatureFileRequest>, IResultAppCollection <ISignatureFileApp> > GetSignaturesSyncList(SignatureServerServiceFactory signatureServerServiceFactory,
                                                                                                                            ISignatureConverter signatureConverter, string signatureFolder) =>
        signaturesFileRequest =>
        signaturesFileRequest.
        Select(signatureRequest => signatureRequest.PersonId).
        Map(ids => signatureServerServiceFactory.UsingServiceRetry(service => service.Operations.GetSignatures(ids.ToList()))).
        WaitAndUnwrapException().
        ToResultValueApplication().
        ResultValueOk(ConverterDataFileFromDto.SignaturesFileDataFromDto).
        Map(signatures => GetSignaturesFileApp(signatures, signaturesFileRequest, signatureConverter, signatureFolder));
 public static Func <IList <SignatureFileRequest>, IResultAppCollection <ISignatureFileApp> > GetSignaturesSync(SignatureServerServiceFactory signatureServerServiceFactory,
                                                                                                                ISignatureConverter signatureConverter,
                                                                                                                string signatureFolder) =>
 signatureFileRequest => GetSignaturesSyncList(signatureServerServiceFactory, signatureConverter, signatureFolder).
 Map(getSignaturesFunc => getSignaturesFunc(signatureFileRequest.ToList()));