Index: logview/loglist.c
===================================================================
--- logview/loglist.c	(revision 7967)
+++ logview/loglist.c	(working copy)
@@ -18,11 +18,11 @@
  */
 
 #include <gtk/gtk.h>
+#include <gio/gio.h>
 #include "logview.h"
 #include "misc.h"
 #include "loglist.h"
 #include "logrtns.h"
-#include <libgnomevfs/gnome-vfs.h>
 
 struct LogListPriv {
 	GtkTreeStore *model;
Index: logview/userprefs.c
===================================================================
--- logview/userprefs.c	(revision 7967)
+++ logview/userprefs.c	(working copy)
@@ -26,7 +26,6 @@
 #include <string.h>
 #include <gtk/gtk.h>
 #include <gconf/gconf-client.h>
-#include <libgnomevfs/gnome-vfs.h>
 #include "userprefs.h"
 #include <sys/stat.h>
 #include "logview.h"
@@ -113,20 +112,14 @@
 #endif
 	NULL};
 	struct stat filestat;
-	GSList *logs = NULL;
-	GnomeVFSResult result;
-	GnomeVFSHandle *handle;
+	GSList *logs;
 
 	g_assert (p != NULL);
 	
 	/* For first time running, try parsing various logfiles */
 	/* Try to parse syslog.conf to get logfile names */
 
-	result = gnome_vfs_open (&handle, "/etc/syslog.conf", GNOME_VFS_OPEN_READ);
-	if (result == GNOME_VFS_OK) {
-		gnome_vfs_close (handle);
-		logs = parse_syslog ("/etc/syslog.conf");
-	}
+	logs = parse_syslog ("/etc/syslog.conf");
 	
 	for (i=0; logfiles[i]; i++) {
 	    if (g_slist_find_custom(logs, logfiles[i], (GCompareFunc)g_ascii_strcasecmp) == NULL &&
Index: logview/log_repaint.c
===================================================================
--- logview/log_repaint.c	(revision 7967)
+++ logview/log_repaint.c	(working copy)
@@ -188,7 +188,7 @@
      *index = '\0';
 
    modified = g_strdup_printf (_("last update: %s"), modified);
-   size = gnome_vfs_format_file_size_for_display (log->stats->file_size);
+   size = g_format_size_for_display (log->stats->file_size);
    statusbar_text = g_strdup_printf (_("%d lines (%s) - %s"), 
                                      log->total_lines, size, modified);
                                      
Index: logview/main.c
===================================================================
--- logview/main.c	(revision 7967)
+++ logview/main.c	(working copy)
@@ -26,7 +26,6 @@
 
 #include <libgnomeui/gnome-client.h>
 #include <libgnomeui/gnome-ui-init.h>
-#include <libgnomevfs/gnome-vfs.h>
 
 #include <glib/gi18n.h>
 #include <glib/goption.h>
@@ -131,7 +130,6 @@
 
 	error_dialog_queue (TRUE);
 	
-	gnome_vfs_init ();
 	prefs_init ();
 	context = logview_init_options ();
 	
Index: logview/monitor.c
===================================================================
--- logview/monitor.c	(revision 7967)
+++ logview/monitor.c	(working copy)
@@ -21,10 +21,10 @@
 
 #include <gtk/gtk.h>
 #include <glib/gi18n.h>
+#include <gio/gio.h>
 #include "logview.h"
 #include "logrtns.h"
 #include "monitor.h"
-#include <libgnomevfs/gnome-vfs-ops.h>
 
 void
 monitor_stop (Log *log)
@@ -32,28 +32,27 @@
   g_return_if_fail (log);
 
   if (log->mon_handle != NULL) {
-      gnome_vfs_monitor_cancel (log->mon_handle);
-      log->mon_handle = NULL;
-      log->mon_offset = 0;
+    g_file_monitor_cancel(log->mon_handle);
+    log->mon_handle = NULL;
+    log->mon_offset = 0;
       
-      gnome_vfs_close (log->mon_file_handle);
-      log->mon_file_handle = NULL;
+    g_object_unref (log->mon_file_handle);
+    log->mon_file_handle = NULL;
       
-      log->monitored = FALSE;
+    log->monitored = FALSE;
   }
 }
 
 static void
-monitor_callback (GnomeVFSMonitorHandle *handle, const gchar *monitor_uri,
-                  const gchar *info_uri, GnomeVFSMonitorEventType event_type,
-                  gpointer data)
+monitor_callback (GFileMonitor *mon, GFile *file, GFile *other_file, 
+    GFileMonitorEvent event_type, gpointer data)
 {
   LogviewWindow *logview;
   Log *log = data;
   
   g_assert (log);
 
-  logview  = LOGVIEW_WINDOW (log->window);
+  logview = LOGVIEW_WINDOW (log->window);
   loglist_bold_log (LOG_LIST (logview->loglist), log);
   log->needs_refresh = TRUE;
   if (logview->curlog == log)
@@ -63,34 +62,39 @@
 void
 monitor_start (Log *log)
 {
-  GnomeVFSResult result;
-  GnomeVFSFileSize size;
   gchar *main = NULL, *second = NULL;
+  GFile *file;
+  GFileInfo *info;
+  GError *err = NULL;
 	 
   g_return_if_fail (log);
 
-  result = gnome_vfs_open (&(log->mon_file_handle), log->name, 
-                           GNOME_VFS_OPEN_READ);
-  result = gnome_vfs_seek (log->mon_file_handle, GNOME_VFS_SEEK_END, 0L);
-  result = gnome_vfs_tell (log->mon_file_handle, &size);
-  log->mon_offset = size;
+  /* get current file size */
+  file = g_file_new_for_path (log->name);
+  info = g_file_query_info (file, G_FILE_ATTRIBUTE_STANDARD_SIZE,
+      G_FILE_QUERY_INFO_NONE, NULL, &err);
+  log->mon_offset = g_file_info_get_size (info);
+  g_object_unref (info);
 
-  result = gnome_vfs_monitor_add (&(log->mon_handle), log->name,
-                         GNOME_VFS_MONITOR_FILE, monitor_callback,
-                         log);
+  /* add file monitor */
+  log->mon_handle = g_file_monitor_file (file, G_FILE_MONITOR_NONE,
+      NULL, &err);
+  log->mon_file_handle = g_file_read (file, NULL, &err);
 
-  if (result != GNOME_VFS_OK) {
+  g_object_unref (file);
+
+  /* connect to changed events */
+  g_signal_connect (log->mon_handle, "changed", G_CALLBACK(monitor_callback),
+  		log);
+
+  if (err) {
     main = g_strdup (_("This file cannot be monitored."));
-    switch (result) {
-    case GNOME_VFS_ERROR_NOT_SUPPORTED :
-        second = g_strdup (_("File monitoring is not supported on this file system.\n"));
-    default:
-        second = g_strdup (_("Gnome-VFS Error.\n"));
-    }
+    second = g_strdup (err->message);
     error_dialog_show (NULL, main, second);
+    monitor_stop(log);
+    g_error_free (err);
     g_free (main);
     g_free (second);
-    gnome_vfs_close (log->mon_file_handle);
     return;
   }
 
Index: logview/logrtns.c
===================================================================
--- logview/logrtns.c	(revision 7967)
+++ logview/logrtns.c	(working copy)
@@ -24,13 +24,16 @@
 #ifdef HAVE_CONFIG_H
 #include <config.h>
 #endif
+#ifdef HAVE_LIBZ
+#include <zlib.h>
+#endif
 #include <gtk/gtk.h>
 #include <glib/gi18n.h>
+#include <gio/gio.h>
 #include <string.h>
 #include <stdlib.h>
 #include "logview.h"
 #include "logrtns.h"
-#include <libgnomevfs/gnome-vfs-mime-utils.h>
 #include "misc.h"
 #include "math.h"
 
@@ -41,63 +44,30 @@
 /* File checking */
 
 static gboolean
-file_exist (char *filename, gboolean show_error)
+file_is_zipped (const char *filename)
 {
-   GnomeVFSHandle *handle;
-   GnomeVFSResult result;
-   char *secondary = NULL;
+	char *mime_type;
+	gboolean uncertain;
 
-   if (filename == NULL)
-       return FALSE;
+	if (filename == NULL)
+		return FALSE;
 
-   result = gnome_vfs_open (&handle, filename, GNOME_VFS_OPEN_READ);
-   if (result != GNOME_VFS_OK) {
-	   if (show_error) {
-		   switch (result) {
-		   case GNOME_VFS_ERROR_ACCESS_DENIED:
-		   case GNOME_VFS_ERROR_NOT_PERMITTED:
-			   secondary = g_strdup_printf (_("%s is not user readable. "
-					 "Either run the program as root or ask the sysadmin to "
-					 "change the permissions on the file.\n"), filename);
-			   break;
-		   case GNOME_VFS_ERROR_TOO_BIG:
-			   secondary = g_strdup_printf (_("%s is too big."), filename);
-			   break;
-		   default:
-			   secondary = g_strdup_printf (_("%s could not be opened."), filename);
-               break;
-		   }
-		   error_dialog_show (NULL, error_main, secondary);
-           g_free (secondary);
-	   }
-	   return FALSE;
-   }
+	mime_type = g_content_type_guess (filename, NULL, 0, &uncertain);
 
-   gnome_vfs_close (handle);
-   return TRUE;
-}
+	if (mime_type == NULL)
+		return FALSE;
 
-static gboolean
-file_is_zipped (char *filename)
-{
-	char *mime_type;
-
-    if (filename == NULL)
-        return FALSE;
-
-	mime_type = gnome_vfs_get_mime_type (filename);
-    if (mime_type == NULL)
-        return FALSE;
-
-	if (strcmp (mime_type, "application/x-gzip")==0 ||
-	    strcmp (mime_type, "application/x-zip")==0 ||
-	    strcmp (mime_type, "application/zip")==0) {
-        g_free (mime_type);
+	if (g_content_type_equals (mime_type, "application/x-gzip")
+			|| g_content_type_equals (mime_type,
+					"application/x-zip")
+			|| g_content_type_equals (mime_type,
+					"application/zip")) {
+		g_free (mime_type);
 		return TRUE;
-    } else {
-        g_free (mime_type);
+	} else {
+		g_free (mime_type);
 		return FALSE;
-    }
+	}
 }
 
 gboolean
@@ -309,150 +279,205 @@
 static LogStats *
 log_stats_new (char *filename, gboolean show_error)
 {
-   GnomeVFSResult result;
-   GnomeVFSFileInfo *info;
-   GnomeVFSHandle *handle;
-   GnomeVFSFileSize size;
-   LogStats *stats;
-   char buff[1024];
-   char *found_space;
+	GError *err = NULL;
+	GFile *file;
+	GFileInfo *info;
+	LogStats *stats;
+	char buff[1024];
+	GTimeVal tv;
 
-   if (filename == NULL)
-       return NULL;
+	if (filename == NULL)
+		return NULL;
 
-   /* Read first line and check that it is text */
-   result = gnome_vfs_open (&handle, filename, GNOME_VFS_OPEN_READ);
-   if (result != GNOME_VFS_OK) {
-	   return NULL;
-   }
+	file = g_file_new_for_path (filename);
 
-   info = gnome_vfs_file_info_new ();
-   result = gnome_vfs_get_file_info_from_handle (handle, info, GNOME_VFS_FILE_INFO_FOLLOW_LINKS);
-   if (result != GNOME_VFS_OK || info->type != GNOME_VFS_FILE_TYPE_REGULAR) {
-       gnome_vfs_file_info_unref (info);
-	   gnome_vfs_close (handle);
-	   return NULL;
-   }
+	info = g_file_query_info(file,
+			G_FILE_ATTRIBUTE_STANDARD_SIZE ","
+					G_FILE_ATTRIBUTE_TIME_MODIFIED, 
+			G_FILE_QUERY_INFO_NONE,	NULL, &err);
 
-   result = gnome_vfs_read (handle, buff, sizeof(buff), &size);
-   gnome_vfs_close (handle);
-   if (result != GNOME_VFS_OK) {
-       gnome_vfs_file_info_unref (info);
-	   return NULL;
-   }
+	if (!info) {
+		g_object_unref(file);
+		g_error_free(err);
+		return NULL;
+	}
    
-   found_space = g_strstr_len (buff, 1024, " ");
-   if (found_space == NULL) {
-       gnome_vfs_file_info_unref (info);
-	   return NULL;
-   }
-   
-   stats = g_new (LogStats, 1);   
-   stats->file_time = info->mtime;
-   stats->file_size = info->size;
-   gnome_vfs_file_info_unref (info);
+	stats = g_new (LogStats, 1);
+	g_file_info_get_modification_time (info, &tv);
+	stats->file_time = tv.tv_sec;
+	stats->file_size = g_file_info_get_size (info);
 
-   return (stats);
+	g_object_unref(info);
+	g_object_unref(file);
+
+	return stats;
 }
 
+static GError*
+log_read_content (const char *filename, char **buf, gsize *size)
+{
+	GError *err=NULL;
+	char *buffer = NULL;
+	goffset len = 0;
+
+	if (file_is_zipped(filename)) {
+#ifdef HAVE_LIBZ
+		int read;
+		gzFile file;
+
+		file = gzopen(filename, "rb");
+		if (file == NULL) {
+			GQuark domain;
+			char *zliberrmsg = "Failed to open compressed log file.";
+			domain = g_quark_from_string(zliberrmsg);
+
+			err = g_error_new_literal(domain, 0, zliberrmsg);
+			return err;
+		}
+
+		do {
+			buffer = g_realloc(buffer, len+1024);
+
+			read = gzread (file, buffer+len, 1024);
+			len += read;
+		} while (!gzeof(file));
+
+		gzclose(file);
+
+		buffer[len] = '\0';
+#else
+#warning "Compiling logview without support for compressed log files!"
+		GQuark domain;
+		char *zliberrmsg = "Can't read compressed file when compiled without zlib support.";
+		domain = g_quark_from_string(zliberrmsg);
+
+		err = g_error_new_literal(domain, 0, zliberrmsg);
+
+		g_warning("%s: %s\n", filename, zliberrmsg);
+
+		return err;
+#endif
+	} else {
+		GFile *file;
+	
+		file = g_file_new_for_path (filename);
+
+		if (!g_file_load_contents (file, NULL, &buffer, &len,
+			NULL, &err)) {
+			return err;
+		}
+		buffer[len-1] = '\0';
+
+		g_object_unref(file);
+	}
+
+	*buf = buffer;
+	*size = len;
+
+	return NULL;
+}
+
 Log *
 log_open (char *filename, gboolean show_error)
 {
-   char *buffer, *zipped_name= NULL, *error_message;
-   GnomeVFSResult result;
-   LogStats *stats;
-   gboolean opened = TRUE;
-   int i, size;
-   GList *days;
-   Log *log;
-   
-   stats = log_stats_new (filename, show_error);
-   if (stats == NULL) {
-       if (file_is_zipped (filename)) {    
-           zipped_name = g_strdup_printf ("%s#gzip:", filename);
-           stats = log_stats_new (filename, show_error);
-           if (stats == NULL) {
-               opened = FALSE;
-           }
-       } else
-           opened = FALSE;
-   }
-   
-   if (opened == FALSE) {
-       error_message = g_strdup_printf (_("%s is not a log file."), filename);
-       goto error;
-   }
+	char *buffer, *error_message;
+	GError *err = NULL;
+	GFile *file;
+	LogStats *stats;
+	gboolean opened = TRUE;
+	int i;
+	gsize size;
+	GList *days;
+	Log *log;
 
-   log = g_new0 (Log, 1);   
-   if (log == NULL) {
-       error_message = g_strdup (_("Not enough memory."));
-       goto error;
-   }
+	stats = log_stats_new (filename, show_error);
+	if (stats == NULL) {
+		error_message = g_strdup_printf (_("%s is not a log file."),
+				filename);
+		goto error;
+	}
 
-   if (!zipped_name) {
-       log->name = g_strdup (filename);
-   } else {
-       log->name = zipped_name;
-       log->display_name = g_strdup (filename);
-   }
+	log = g_new0 (Log, 1);   
+	if (log == NULL) {
+		error_message = g_strdup (_("Not enough memory."));
+		goto error;
+	}
 
-   result = gnome_vfs_read_entire_file (log->name, &size, &buffer);
-   buffer[size-1] = 0;
-   if (result != GNOME_VFS_OK) {
-       error_message = g_strdup_printf (_("%s cannot be opened."), log->name);
-       goto error;
-   }
+	log->name = g_strdup (filename);
 
-   if (g_get_charset (NULL) == FALSE) {
-       char *buffer2;
-       buffer2 = locale_to_utf8 (buffer);
-       g_free (buffer);
-       buffer = buffer2;
-   }
+	err = log_read_content (log->name, &buffer, &size);
 
-   log->lines = g_strsplit (buffer, "\n", -1);
-   g_free (buffer);   
+	if (err) {
+		error_message = g_strdup_printf(_("%s cannot be opened: %s"),
+				log->name, err->message);
+		g_error_free (err);
+		goto error;
+	}
 
-   log->total_lines = g_strv_length (log->lines);
-   log->displayed_lines = log->total_lines;
-   log->first_time = TRUE;
-   log->stats = stats;
-   log->model = NULL;
-   log->filter = NULL;
-   log->mon_offset = 0;
-   log->bold_rows_list = NULL;
+	if (g_get_charset (NULL) == FALSE) {
+		char *buffer2;
 
-   /* A log without dates will return NULL */
-   log->days = log_read_dates (log->lines, log->stats->file_time);
+		buffer2 = locale_to_utf8 (buffer);
+		g_free (buffer);
+		buffer = buffer2;
+	}
 
-   /* Check for older versions of the log */
-   log->versions = 0;
-   log->current_version = 0;
-   log->parent_log = NULL;
-   for (i=1; i<5; i++) {
-       gchar *older_name;
-       older_name = g_strdup_printf ("%s.%d", log->name, i);
-       log->older_logs[i] = log_open (older_name, FALSE);
-       g_free (older_name);
-       if (log->older_logs[i] != NULL) {
-           log->older_logs[i]->parent_log = log;
-           log->older_logs[i]->current_version = i;
-           log->versions++;
-       }
-       else
-           break;
-   }
+	log->lines = g_strsplit (buffer, "\n", -1);
+	g_free (buffer);   
 
-   return log;
+	log->total_lines = g_strv_length (log->lines);
+	log->displayed_lines = log->total_lines;
+	log->first_time = TRUE;
+	log->stats = stats;
+	log->model = NULL;
+	log->filter = NULL;
+	log->mon_offset = 0;
+	log->bold_rows_list = NULL;
 
+	/* A log without dates will return NULL */
+	log->days = log_read_dates (log->lines, log->stats->file_time);
+
+	/* Check for older versions of the log */
+	log->versions = 0;
+	log->current_version = 0;
+	log->parent_log = NULL;
+	for (i=0; i<10; i++) {
+		gchar *older_name;
+
+		/* check for older uncompressed log */
+		older_name = g_strdup_printf ("%s.%d", log->name, i);
+		log->older_logs[i] = log_open (older_name, FALSE);
+		g_free (older_name);
+		if (log->older_logs[i] != NULL) {
+			log->older_logs[i]->parent_log = log;
+			log->older_logs[i]->current_version = i;
+			log->versions++;
+			continue;
+		}
+
+		/* check for compressed older log */
+		older_name = g_strdup_printf("%s.%d.gz", log->name, i);
+		log->older_logs[i] = log_open (older_name, FALSE);
+		g_free (older_name);
+		if (log->older_logs[i] != NULL) {
+			log->older_logs[i]->parent_log = log;
+			log->older_logs[i]->current_version = i;
+			log->versions++;
+			continue;
+		}
+
+	}
+
+	return log;
+
 error:
-   if (error_message && show_error) {
-       error_dialog_show (NULL, error_main, error_message);
-   }
+	if (error_message && show_error) {
+		error_dialog_show (NULL, error_main, error_message);
+	}
    
-   g_free (error_message);
+	g_free (error_message);
    
-   return NULL;
+	return NULL;
 }
 
 static void
@@ -485,40 +510,46 @@
 gboolean 
 log_read_new_lines (Log *log)
 {
-    GnomeVFSResult result;
-    gchar *buffer;
-    GnomeVFSFileSize newfilesize, read;
-    guint64 size, newsize;
+	GError *err = NULL;
+	gchar *buffer;
+	goffset size, newsize;
+	gssize read;
     
-    g_return_val_if_fail (log!=NULL, FALSE);
-    
-    result = gnome_vfs_seek (log->mon_file_handle, GNOME_VFS_SEEK_END, 0L);
-    result = gnome_vfs_tell (log->mon_file_handle, &newfilesize);
-    size = log->mon_offset;
-    newsize = newfilesize;
+	g_return_val_if_fail (log!=NULL, FALSE);
+   
+	if (!g_seekable_seek (G_SEEKABLE(log->mon_file_handle),
+			0, G_SEEK_END,
+			NULL, &err)) {
+		g_error_free(err);
+		return FALSE;
+	}
+	newsize = g_seekable_tell (G_SEEKABLE(log->mon_file_handle));
+	size = log->mon_offset;
 
-    if (newsize > size) {
-      buffer = g_malloc (newsize - size);
-      if (!buffer)
-	return FALSE;
+	if (newsize > size)
+		buffer = g_malloc (newsize - size);
+	else
+		return FALSE;
 
-      result = gnome_vfs_seek (log->mon_file_handle, GNOME_VFS_SEEK_START, size);
-      if (result != GNOME_VFS_OK)
-	return FALSE;
+	if (!g_seekable_seek(G_SEEKABLE(log->mon_file_handle),
+			size, G_SEEK_SET,
+			NULL, &err)) {
+		g_error_free(err);
+		return FALSE;
+	}
 
-      result = gnome_vfs_read (log->mon_file_handle, buffer, newsize-size, &read);
-      if (result != GNOME_VFS_OK)
-	return FALSE;
+	read = g_input_stream_read (G_INPUT_STREAM(log->mon_file_handle), 
+			buffer, newsize-size, NULL, &err);
+	if (read < 0)
+		return FALSE;
 
-      buffer [newsize-size-1] = 0;
-      log->mon_offset = newsize;      
-      log_add_lines (log, buffer);
-      g_free (buffer);
+	buffer [read-1] = 0;
+	log->mon_offset = newsize;      
+	log_add_lines (log, buffer);
+	g_free (buffer);
       
-      log_stats_reload (log);
-      return TRUE;
-    }
-    return FALSE;
+	log_stats_reload (log);
+	return TRUE;
 }
 
 /* 
@@ -561,7 +592,7 @@
 
    /* Close file - this should not be needed */
    if (log->mon_file_handle != NULL) {
-	   gnome_vfs_close (log->mon_file_handle);
+	   g_object_unref (log->mon_file_handle);
 	   log->mon_file_handle = NULL;
    }
 
@@ -595,12 +626,12 @@
 gchar *
 log_extract_filename (Log *log)
 {
-  GnomeVFSURI *uri;
   gchar *filename;
+  GFile *file;
 
-  uri = gnome_vfs_uri_new (log->name);
-  filename = gnome_vfs_uri_extract_short_name (uri);
-  gnome_vfs_uri_unref (uri);
+  file = g_file_new_for_uri (log->name);
+  filename = g_file_get_parse_name (file);
+  g_object_unref (file);
 
   return filename;
 }
@@ -608,12 +639,14 @@
 gchar *
 log_extract_dirname (Log *log)
 {
-  GnomeVFSURI *uri;
   gchar *dirname;
+  GFile *file, *parent;
 
-  uri = gnome_vfs_uri_new (log->name);
-  dirname = gnome_vfs_uri_extract_dirname (uri);
-  gnome_vfs_uri_unref (uri);
+  file = g_file_new_for_path (log->name);
+  parent = g_file_get_parent (file);
+  dirname = g_file_get_path (parent);
+  g_object_unref (parent);
+  g_object_unref (file);
 
   return dirname;
 }
Index: logview/logrtns.h
===================================================================
--- logview/logrtns.h	(revision 7967)
+++ logview/logrtns.h	(working copy)
@@ -22,7 +22,7 @@
 #define __LOGRTNS_H__
 
 #include <time.h>
-#include <libgnomevfs/gnome-vfs.h>
+#include <gio/gio.h>
 
 typedef struct
 {
@@ -35,7 +35,7 @@
 typedef struct
 {
     time_t file_time;
-    GnomeVFSFileSize file_size;
+    goffset file_size;
 } LogStats;
 
 typedef struct TreePathRange
@@ -59,9 +59,9 @@
     gint displayed_lines; /* no of lines displayed now */
 
 	/* Monitor info */
-	GnomeVFSFileSize mon_offset;
-	GnomeVFSMonitorHandle *mon_handle;
-    GnomeVFSHandle *mon_file_handle;
+	goffset mon_offset;
+	GFileMonitor *mon_handle;
+	GFileInputStream *mon_file_handle;
 	gboolean monitored;
     gboolean needs_refresh;
 
