changed snapshot provider, added remoteurl/event function(still broken)