     
     private func storeLocal(
         data:Data,
-        directoryName:String) -> String?
+        directoryPath:URL) -> String?
     {
         let randomName:String = UUID().uuidString
-        
-        var elementPath:URL = FileManager.default.appDirectory
-        elementPath.appendPathComponent(
-            MVitaLink.kRootDirectory)
-        elementPath.appendPathComponent(
-            directoryName)
-        elementPath.appendPathComponent(randomName)
-        elementPath.excludeFromBackup()
+        let elementPath:URL = directoryPath.appendingPathComponent(
+            randomName)
         
         do
         {

            storeElement(
                element:element,
                directory:directory,
                database:database,
                dispatchGroup:dispatchGroup)
        }

            self?.storeElements(
                elements:elements,
                directory:directory,
                directoryPath:directoryPath,
                database:database,
                completion:completion)
        }
    }
    
    private func createDirectoryPath(
        name:String) -> URL?
    {
        var directoryPath:URL = FileManager.default.appDirectory
        directoryPath.appendPathComponent(
            MVitaLink.kRootDirectory)
        directoryPath.excludeFromBackup()
        directoryPath.appendPathComponent(
            name)
        directoryPath.excludeFromBackup()
        
        do
        {
            try FileManager.default.createDirectory(
                at:directoryPath,
                withIntermediateDirectories:true,
                attributes:nil)
        }
        catch
        {
            return nil
        }
        
        return directoryPath
    }
    
    private func storeElements(
        elements:[MVitaItemIn],
        directory:DVitaItemDirectory,
        directoryPath:URL,
        database:Database,
        completion:@escaping(() -> ()))
    {
