observer uploaded