We need to develop a windows explorer namespace extension application which mirrors a network share on a remote server. Our central server exposes a share for uploading and downloading of files from any network location. The application we need will create a folder or mapped drive attached to the Windows Explorer root, which displays the contents of the mapped drive so the user can drag and drop or copy and paste files from their local computer into the mapped drive. The application needs to not only provide access to the network share via the namespace extension, but we also need to create a local mirror of the files uploaded by the user. In other words, as the user drags or copies a file into the namespace extension, the files are also copied to a mirror on the local computer. So this way, if the user is online, they can access the files from the central share. if they are not online, they still have access to their local copies of files. also if not online, they can copy files into the local mirror, and then when connected the application should synchronize with the share on the server, the local copies of the files. Conversely, if a file was uploaded to the share by another machine, this application should synchronize the local cache with the files on the network share.