<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,5 +1,5 @@
 
-v0.15. Update to libmemcached 0.28. UDP support.
+v0.15. Update to libmemcached 0.29. UDP support.
 
 v0.14.4. Re-SWIG.
 </diff>
      <filename>CHANGELOG</filename>
    </modified>
    <modified>
      <diff>@@ -4,7 +4,7 @@
 This chart shows which versions of the Ruby library are compatible with which versions of libmemcached.
 
 &lt;b&gt;Library version&lt;/b&gt;:: &lt;b&gt;libmemcached version&lt;/b&gt;
-0.15:: 0.28
+0.15:: 0.29
 0.14.4:: 0.26.3
 0.13:: 0.25
 0.12:: 0.24</diff>
      <filename>COMPATIBILITY</filename>
    </modified>
    <modified>
      <diff>@@ -1772,29 +1772,30 @@ int SWIG_Ruby_arity( VALUE proc, int minimal )
 #define SWIGTYPE_p_memcached_clone_func swig_types[7]
 #define SWIGTYPE_p_memcached_connection swig_types[8]
 #define SWIGTYPE_p_memcached_continuum_item_st swig_types[9]
-#define SWIGTYPE_p_memcached_execute_function swig_types[10]
-#define SWIGTYPE_p_memcached_free_function swig_types[11]
-#define SWIGTYPE_p_memcached_hash swig_types[12]
-#define SWIGTYPE_p_memcached_malloc_function swig_types[13]
-#define SWIGTYPE_p_memcached_realloc_function swig_types[14]
-#define SWIGTYPE_p_memcached_result_st swig_types[15]
-#define SWIGTYPE_p_memcached_return swig_types[16]
-#define SWIGTYPE_p_memcached_server_distribution swig_types[17]
-#define SWIGTYPE_p_memcached_server_function swig_types[18]
-#define SWIGTYPE_p_memcached_server_st swig_types[19]
-#define SWIGTYPE_p_memcached_st swig_types[20]
-#define SWIGTYPE_p_memcached_stat_st swig_types[21]
-#define SWIGTYPE_p_memcached_string_st swig_types[22]
-#define SWIGTYPE_p_memcached_trigger_delete_key swig_types[23]
-#define SWIGTYPE_p_memcached_trigger_key swig_types[24]
-#define SWIGTYPE_p_p_char swig_types[25]
-#define SWIGTYPE_p_size_t swig_types[26]
-#define SWIGTYPE_p_time_t swig_types[27]
-#define SWIGTYPE_p_uint32_t swig_types[28]
-#define SWIGTYPE_p_uint64_t swig_types[29]
-#define SWIGTYPE_p_void swig_types[30]
-static swig_type_info *swig_types[32];
-static swig_module_info swig_module = {swig_types, 31, 0, 0, 0, 0};
+#define SWIGTYPE_p_memcached_dump_func swig_types[10]
+#define SWIGTYPE_p_memcached_execute_function swig_types[11]
+#define SWIGTYPE_p_memcached_free_function swig_types[12]
+#define SWIGTYPE_p_memcached_hash swig_types[13]
+#define SWIGTYPE_p_memcached_malloc_function swig_types[14]
+#define SWIGTYPE_p_memcached_realloc_function swig_types[15]
+#define SWIGTYPE_p_memcached_result_st swig_types[16]
+#define SWIGTYPE_p_memcached_return swig_types[17]
+#define SWIGTYPE_p_memcached_server_distribution swig_types[18]
+#define SWIGTYPE_p_memcached_server_function swig_types[19]
+#define SWIGTYPE_p_memcached_server_st swig_types[20]
+#define SWIGTYPE_p_memcached_st swig_types[21]
+#define SWIGTYPE_p_memcached_stat_st swig_types[22]
+#define SWIGTYPE_p_memcached_string_st swig_types[23]
+#define SWIGTYPE_p_memcached_trigger_delete_key swig_types[24]
+#define SWIGTYPE_p_memcached_trigger_key swig_types[25]
+#define SWIGTYPE_p_p_char swig_types[26]
+#define SWIGTYPE_p_size_t swig_types[27]
+#define SWIGTYPE_p_time_t swig_types[28]
+#define SWIGTYPE_p_uint32_t swig_types[29]
+#define SWIGTYPE_p_uint64_t swig_types[30]
+#define SWIGTYPE_p_void swig_types[31]
+static swig_type_info *swig_types[33];
+static swig_module_info swig_module = {swig_types, 32, 0, 0, 0, 0};
 #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&amp;swig_module, &amp;swig_module, name)
 #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&amp;swig_module, &amp;swig_module, name)
 
@@ -2430,9 +2431,9 @@ free_memcached_continuum_item_st(struct memcached_continuum_item_st *arg1) {
 swig_class cMemcachedAnalysisSt;
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_most_used_bytes_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_average_item_size_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
-  uint64_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -2443,21 +2444,21 @@ _wrap_MemcachedAnalysisSt_most_used_bytes_set(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_used_bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;average_item_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;most_used_bytes&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;average_item_size&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;most_used_bytes&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;average_item_size&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint64_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;most_used_bytes = arg2;
+  if (arg1) (arg1)-&gt;average_item_size = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2465,11 +2466,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_most_used_bytes_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_average_item_size_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint64_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -2477,12 +2478,12 @@ _wrap_MemcachedAnalysisSt_most_used_bytes_get(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_used_bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;average_item_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;most_used_bytes);
+  result =  ((arg1)-&gt;average_item_size);
   {
-    vresult = ULL2NUM(result);
+    vresult = UINT2NUM(result);
   }
   return vresult;
 fail:
@@ -2491,9 +2492,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_least_remaining_bytes_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_longest_uptime_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
-  uint64_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -2504,21 +2505,21 @@ _wrap_MemcachedAnalysisSt_least_remaining_bytes_set(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_remaining_bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;longest_uptime&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;least_remaining_bytes&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;longest_uptime&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;least_remaining_bytes&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;longest_uptime&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint64_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;least_remaining_bytes = arg2;
+  if (arg1) (arg1)-&gt;longest_uptime = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2526,11 +2527,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_least_remaining_bytes_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_longest_uptime_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint64_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -2538,12 +2539,12 @@ _wrap_MemcachedAnalysisSt_least_remaining_bytes_get(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_remaining_bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;longest_uptime&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;least_remaining_bytes);
+  result =  ((arg1)-&gt;longest_uptime);
   {
-    vresult = ULL2NUM(result);
+    vresult = UINT2NUM(result);
   }
   return vresult;
 fail:
@@ -2552,7 +2553,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_average_item_size_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_least_free_server_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -2565,21 +2566,21 @@ _wrap_MemcachedAnalysisSt_average_item_size_set(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;average_item_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_free_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;average_item_size&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;least_free_server&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;average_item_size&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;least_free_server&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;average_item_size = arg2;
+  if (arg1) (arg1)-&gt;least_free_server = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2587,7 +2588,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_average_item_size_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_least_free_server_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -2599,10 +2600,10 @@ _wrap_MemcachedAnalysisSt_average_item_size_get(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;average_item_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_free_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;average_item_size);
+  result =  ((arg1)-&gt;least_free_server);
   {
     vresult = UINT2NUM(result);
   }
@@ -2613,7 +2614,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_longest_uptime_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_most_consumed_server_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -2626,21 +2627,21 @@ _wrap_MemcachedAnalysisSt_longest_uptime_set(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;longest_uptime&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_consumed_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;longest_uptime&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;most_consumed_server&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;longest_uptime&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;most_consumed_server&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;longest_uptime = arg2;
+  if (arg1) (arg1)-&gt;most_consumed_server = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2648,7 +2649,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_longest_uptime_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_most_consumed_server_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -2660,10 +2661,10 @@ _wrap_MemcachedAnalysisSt_longest_uptime_get(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;longest_uptime&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_consumed_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;longest_uptime);
+  result =  ((arg1)-&gt;most_consumed_server);
   {
     vresult = UINT2NUM(result);
   }
@@ -2674,7 +2675,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_least_free_server_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_oldest_server_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -2687,21 +2688,21 @@ _wrap_MemcachedAnalysisSt_least_free_server_set(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_free_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;oldest_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;least_free_server&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;oldest_server&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;least_free_server&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;oldest_server&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;least_free_server = arg2;
+  if (arg1) (arg1)-&gt;oldest_server = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2709,7 +2710,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_least_free_server_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_oldest_server_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -2721,10 +2722,10 @@ _wrap_MemcachedAnalysisSt_least_free_server_get(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_free_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;oldest_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;least_free_server);
+  result =  ((arg1)-&gt;oldest_server);
   {
     vresult = UINT2NUM(result);
   }
@@ -2735,34 +2736,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_most_consumed_server_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_pool_hit_ratio_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
-  uint32_t arg2 ;
+  double arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  double val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_consumed_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;pool_hit_ratio&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;most_consumed_server&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;most_consumed_server&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((uint32_t *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;most_consumed_server = arg2;
+  ecode2 = SWIG_AsVal_double(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;double&quot;,&quot;pool_hit_ratio&quot;, 2, argv[0] ));
+  } 
+  arg2 = (double)(val2);
+  if (arg1) (arg1)-&gt;pool_hit_ratio = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2770,11 +2765,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_most_consumed_server_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_pool_hit_ratio_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  double result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -2782,13 +2777,11 @@ _wrap_MemcachedAnalysisSt_most_consumed_server_get(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_consumed_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;pool_hit_ratio&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;most_consumed_server);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result = (double) ((arg1)-&gt;pool_hit_ratio);
+  vresult = SWIG_From_double((double)(result));
   return vresult;
 fail:
   return Qnil;
@@ -2796,9 +2789,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_oldest_server_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_most_used_bytes_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
-  uint32_t arg2 ;
+  uint64_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -2809,21 +2802,21 @@ _wrap_MemcachedAnalysisSt_oldest_server_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;oldest_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_used_bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;oldest_server&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;most_used_bytes&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;oldest_server&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;most_used_bytes&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;oldest_server = arg2;
+  if (arg1) (arg1)-&gt;most_used_bytes = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2831,11 +2824,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_oldest_server_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_most_used_bytes_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  uint64_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -2843,12 +2836,12 @@ _wrap_MemcachedAnalysisSt_oldest_server_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;oldest_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;most_used_bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result =  ((arg1)-&gt;oldest_server);
+  result =  ((arg1)-&gt;most_used_bytes);
   {
-    vresult = UINT2NUM(result);
+    vresult = ULL2NUM(result);
   }
   return vresult;
 fail:
@@ -2857,28 +2850,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_pool_hit_ratio_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_least_remaining_bytes_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
-  double arg2 ;
+  uint64_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;pool_hit_ratio&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_remaining_bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  ecode2 = SWIG_AsVal_double(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;double&quot;,&quot;pool_hit_ratio&quot;, 2, argv[0] ));
-  } 
-  arg2 = (double)(val2);
-  if (arg1) (arg1)-&gt;pool_hit_ratio = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;least_remaining_bytes&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;least_remaining_bytes&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((uint64_t *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;least_remaining_bytes = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2886,11 +2885,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedAnalysisSt_pool_hit_ratio_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedAnalysisSt_least_remaining_bytes_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_analysis_st *arg1 = (struct memcached_analysis_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  double result;
+  uint64_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -2898,11 +2897,13 @@ _wrap_MemcachedAnalysisSt_pool_hit_ratio_get(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_analysis_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;pool_hit_ratio&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_analysis_st *&quot;,&quot;least_remaining_bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_analysis_st *)(argp1);
-  result = (double) ((arg1)-&gt;pool_hit_ratio);
-  vresult = SWIG_From_double((double)(result));
+  result =  ((arg1)-&gt;least_remaining_bytes);
+  {
+    vresult = ULL2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -2949,7 +2950,7 @@ free_memcached_analysis_st(struct memcached_analysis_st *arg1) {
 swig_class cMemcachedStatSt;
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_pid_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_connection_structures_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -2962,21 +2963,21 @@ _wrap_MemcachedStatSt_pid_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;pid&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;connection_structures&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;pid&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;connection_structures&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;pid&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;connection_structures&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;pid = arg2;
+  if (arg1) (arg1)-&gt;connection_structures = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -2984,7 +2985,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_pid_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_connection_structures_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -2996,10 +2997,10 @@ _wrap_MemcachedStatSt_pid_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;pid&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;connection_structures&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;pid);
+  result =  ((arg1)-&gt;connection_structures);
   {
     vresult = UINT2NUM(result);
   }
@@ -3010,7 +3011,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_uptime_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_curr_connections_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3023,21 +3024,21 @@ _wrap_MemcachedStatSt_uptime_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;uptime&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_connections&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;uptime&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;curr_connections&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;uptime&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;curr_connections&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;uptime = arg2;
+  if (arg1) (arg1)-&gt;curr_connections = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3045,7 +3046,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_uptime_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_curr_connections_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3057,10 +3058,10 @@ _wrap_MemcachedStatSt_uptime_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;uptime&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_connections&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;uptime);
+  result =  ((arg1)-&gt;curr_connections);
   {
     vresult = UINT2NUM(result);
   }
@@ -3071,7 +3072,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_threads_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_curr_items_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3084,21 +3085,21 @@ _wrap_MemcachedStatSt_threads_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;threads&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_items&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;threads&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;curr_items&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;threads&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;curr_items&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;threads = arg2;
+  if (arg1) (arg1)-&gt;curr_items = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3106,7 +3107,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_threads_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_curr_items_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3118,10 +3119,10 @@ _wrap_MemcachedStatSt_threads_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;threads&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_items&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;threads);
+  result =  ((arg1)-&gt;curr_items);
   {
     vresult = UINT2NUM(result);
   }
@@ -3132,7 +3133,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_time_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_pid_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3145,21 +3146,21 @@ _wrap_MemcachedStatSt_time_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;time&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;pid&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;time&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;pid&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;time&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;pid&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;time = arg2;
+  if (arg1) (arg1)-&gt;pid = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3167,7 +3168,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_time_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_pid_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3179,10 +3180,10 @@ _wrap_MemcachedStatSt_time_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;time&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;pid&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;time);
+  result =  ((arg1)-&gt;pid);
   {
     vresult = UINT2NUM(result);
   }
@@ -3254,7 +3255,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_user_seconds_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_system_microseconds_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3267,21 +3268,21 @@ _wrap_MemcachedStatSt_rusage_user_seconds_set(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_seconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_microseconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_user_seconds&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_system_microseconds&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_user_seconds&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_system_microseconds&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;rusage_user_seconds = arg2;
+  if (arg1) (arg1)-&gt;rusage_system_microseconds = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3289,7 +3290,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_user_seconds_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_system_microseconds_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3301,10 +3302,10 @@ _wrap_MemcachedStatSt_rusage_user_seconds_get(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_seconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_microseconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;rusage_user_seconds);
+  result =  ((arg1)-&gt;rusage_system_microseconds);
   {
     vresult = UINT2NUM(result);
   }
@@ -3315,7 +3316,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_user_microseconds_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_system_seconds_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3328,21 +3329,21 @@ _wrap_MemcachedStatSt_rusage_user_microseconds_set(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_microseconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_seconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_user_microseconds&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_system_seconds&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_user_microseconds&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_system_seconds&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;rusage_user_microseconds = arg2;
+  if (arg1) (arg1)-&gt;rusage_system_seconds = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3350,7 +3351,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_user_microseconds_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_system_seconds_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3362,10 +3363,10 @@ _wrap_MemcachedStatSt_rusage_user_microseconds_get(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_microseconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_seconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;rusage_user_microseconds);
+  result =  ((arg1)-&gt;rusage_system_seconds);
   {
     vresult = UINT2NUM(result);
   }
@@ -3376,7 +3377,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_system_seconds_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_user_microseconds_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3389,21 +3390,21 @@ _wrap_MemcachedStatSt_rusage_system_seconds_set(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_seconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_microseconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_system_seconds&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_user_microseconds&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_system_seconds&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_user_microseconds&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;rusage_system_seconds = arg2;
+  if (arg1) (arg1)-&gt;rusage_user_microseconds = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3411,7 +3412,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_system_seconds_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_user_microseconds_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3423,10 +3424,10 @@ _wrap_MemcachedStatSt_rusage_system_seconds_get(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_seconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_microseconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;rusage_system_seconds);
+  result =  ((arg1)-&gt;rusage_user_microseconds);
   {
     vresult = UINT2NUM(result);
   }
@@ -3437,7 +3438,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_system_microseconds_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_user_seconds_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3450,21 +3451,21 @@ _wrap_MemcachedStatSt_rusage_system_microseconds_set(int argc, VALUE *argv, VALU
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_microseconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_seconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_system_microseconds&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;rusage_user_seconds&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_system_microseconds&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;rusage_user_seconds&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;rusage_system_microseconds = arg2;
+  if (arg1) (arg1)-&gt;rusage_user_seconds = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3472,7 +3473,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_rusage_system_microseconds_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_rusage_user_seconds_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3484,10 +3485,10 @@ _wrap_MemcachedStatSt_rusage_system_microseconds_get(int argc, VALUE *argv, VALU
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_system_microseconds&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;rusage_user_seconds&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;rusage_system_microseconds);
+  result =  ((arg1)-&gt;rusage_user_seconds);
   {
     vresult = UINT2NUM(result);
   }
@@ -3498,7 +3499,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_curr_items_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_threads_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3511,21 +3512,21 @@ _wrap_MemcachedStatSt_curr_items_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_items&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;threads&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;curr_items&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;threads&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;curr_items&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;threads&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;curr_items = arg2;
+  if (arg1) (arg1)-&gt;threads = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3533,7 +3534,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_curr_items_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_threads_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3545,10 +3546,10 @@ _wrap_MemcachedStatSt_curr_items_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_items&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;threads&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;curr_items);
+  result =  ((arg1)-&gt;threads);
   {
     vresult = UINT2NUM(result);
   }
@@ -3559,7 +3560,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_total_items_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_time_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3572,21 +3573,21 @@ _wrap_MemcachedStatSt_total_items_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_items&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;time&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;total_items&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;time&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;total_items&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;time&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;total_items = arg2;
+  if (arg1) (arg1)-&gt;time = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3594,7 +3595,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_total_items_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_time_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3606,10 +3607,10 @@ _wrap_MemcachedStatSt_total_items_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_items&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;time&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;total_items);
+  result =  ((arg1)-&gt;time);
   {
     vresult = UINT2NUM(result);
   }
@@ -3620,9 +3621,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_limit_maxbytes_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_total_connections_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
-  uint64_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -3633,21 +3634,21 @@ _wrap_MemcachedStatSt_limit_maxbytes_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;limit_maxbytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_connections&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;limit_maxbytes&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;total_connections&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;limit_maxbytes&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;total_connections&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint64_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;limit_maxbytes = arg2;
+  if (arg1) (arg1)-&gt;total_connections = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3655,11 +3656,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_limit_maxbytes_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_total_connections_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint64_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -3667,12 +3668,12 @@ _wrap_MemcachedStatSt_limit_maxbytes_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;limit_maxbytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_connections&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;limit_maxbytes);
+  result =  ((arg1)-&gt;total_connections);
   {
-    vresult = ULL2NUM(result);
+    vresult = UINT2NUM(result);
   }
   return vresult;
 fail:
@@ -3681,7 +3682,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_curr_connections_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_total_items_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3694,21 +3695,21 @@ _wrap_MemcachedStatSt_curr_connections_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_connections&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_items&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;curr_connections&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;total_items&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;curr_connections&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;total_items&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;curr_connections = arg2;
+  if (arg1) (arg1)-&gt;total_items = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3716,7 +3717,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_curr_connections_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_total_items_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3728,10 +3729,10 @@ _wrap_MemcachedStatSt_curr_connections_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;curr_connections&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_items&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;curr_connections);
+  result =  ((arg1)-&gt;total_items);
   {
     vresult = UINT2NUM(result);
   }
@@ -3742,7 +3743,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_total_connections_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_uptime_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -3755,21 +3756,21 @@ _wrap_MemcachedStatSt_total_connections_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_connections&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;uptime&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;total_connections&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;uptime&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;total_connections&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;uptime&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;total_connections = arg2;
+  if (arg1) (arg1)-&gt;uptime = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3777,7 +3778,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_total_connections_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_uptime_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3789,10 +3790,10 @@ _wrap_MemcachedStatSt_total_connections_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;total_connections&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;uptime&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;total_connections);
+  result =  ((arg1)-&gt;uptime);
   {
     vresult = UINT2NUM(result);
   }
@@ -3803,9 +3804,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_connection_structures_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
-  uint32_t arg2 ;
+  uint64_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -3816,21 +3817,21 @@ _wrap_MemcachedStatSt_connection_structures_set(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;connection_structures&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;connection_structures&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;connection_structures&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;connection_structures = arg2;
+  if (arg1) (arg1)-&gt;bytes = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3838,11 +3839,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_connection_structures_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  uint64_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -3850,12 +3851,12 @@ _wrap_MemcachedStatSt_connection_structures_get(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;connection_structures&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;connection_structures);
+  result =  ((arg1)-&gt;bytes);
   {
-    vresult = UINT2NUM(result);
+    vresult = ULL2NUM(result);
   }
   return vresult;
 fail:
@@ -3864,7 +3865,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_read_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -3877,21 +3878,21 @@ _wrap_MemcachedStatSt_bytes_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_read&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes_read&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes_read&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;bytes = arg2;
+  if (arg1) (arg1)-&gt;bytes_read = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3899,7 +3900,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_read_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3911,10 +3912,10 @@ _wrap_MemcachedStatSt_bytes_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_read&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;bytes);
+  result =  ((arg1)-&gt;bytes_read);
   {
     vresult = ULL2NUM(result);
   }
@@ -3925,7 +3926,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_cmd_get_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_written_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -3938,21 +3939,21 @@ _wrap_MemcachedStatSt_cmd_get_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_get&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_written&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cmd_get&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes_written&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;cmd_get&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes_written&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;cmd_get = arg2;
+  if (arg1) (arg1)-&gt;bytes_written = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -3960,7 +3961,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_cmd_get_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_bytes_written_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -3972,10 +3973,10 @@ _wrap_MemcachedStatSt_cmd_get_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_get&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_written&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;cmd_get);
+  result =  ((arg1)-&gt;bytes_written);
   {
     vresult = ULL2NUM(result);
   }
@@ -3986,7 +3987,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_cmd_set_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_cmd_get_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -3999,21 +4000,21 @@ _wrap_MemcachedStatSt_cmd_set_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_set&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_get&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cmd_set&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cmd_get&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;cmd_set&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;cmd_get&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;cmd_set = arg2;
+  if (arg1) (arg1)-&gt;cmd_get = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4021,7 +4022,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_cmd_set_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_cmd_get_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4033,10 +4034,10 @@ _wrap_MemcachedStatSt_cmd_set_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_set&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_get&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;cmd_set);
+  result =  ((arg1)-&gt;cmd_get);
   {
     vresult = ULL2NUM(result);
   }
@@ -4047,7 +4048,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_get_hits_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_cmd_set_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -4060,21 +4061,21 @@ _wrap_MemcachedStatSt_get_hits_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_hits&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_set&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;get_hits&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cmd_set&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;get_hits&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;cmd_set&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;get_hits = arg2;
+  if (arg1) (arg1)-&gt;cmd_set = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4082,7 +4083,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_get_hits_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_cmd_set_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4094,10 +4095,10 @@ _wrap_MemcachedStatSt_get_hits_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_hits&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;cmd_set&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;get_hits);
+  result =  ((arg1)-&gt;cmd_set);
   {
     vresult = ULL2NUM(result);
   }
@@ -4108,7 +4109,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_get_misses_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_evictions_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -4121,21 +4122,21 @@ _wrap_MemcachedStatSt_get_misses_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_misses&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;evictions&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;get_misses&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;evictions&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;get_misses&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;evictions&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;get_misses = arg2;
+  if (arg1) (arg1)-&gt;evictions = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4143,7 +4144,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_get_misses_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_evictions_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4155,10 +4156,10 @@ _wrap_MemcachedStatSt_get_misses_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_misses&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;evictions&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;get_misses);
+  result =  ((arg1)-&gt;evictions);
   {
     vresult = ULL2NUM(result);
   }
@@ -4169,7 +4170,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_evictions_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_get_hits_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -4182,21 +4183,21 @@ _wrap_MemcachedStatSt_evictions_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;evictions&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_hits&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;evictions&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;get_hits&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;evictions&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;get_hits&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;evictions = arg2;
+  if (arg1) (arg1)-&gt;get_hits = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4204,7 +4205,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_evictions_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_get_hits_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4216,10 +4217,10 @@ _wrap_MemcachedStatSt_evictions_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;evictions&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_hits&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;evictions);
+  result =  ((arg1)-&gt;get_hits);
   {
     vresult = ULL2NUM(result);
   }
@@ -4230,7 +4231,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_read_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_get_misses_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -4243,21 +4244,21 @@ _wrap_MemcachedStatSt_bytes_read_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_read&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_misses&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes_read&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;get_misses&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes_read&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;get_misses&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;bytes_read = arg2;
+  if (arg1) (arg1)-&gt;get_misses = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4265,7 +4266,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_read_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_get_misses_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4277,10 +4278,10 @@ _wrap_MemcachedStatSt_bytes_read_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_read&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;get_misses&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;bytes_read);
+  result =  ((arg1)-&gt;get_misses);
   {
     vresult = ULL2NUM(result);
   }
@@ -4291,7 +4292,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_written_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_limit_maxbytes_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   uint64_t arg2 ;
   void *argp1 = 0 ;
@@ -4304,21 +4305,21 @@ _wrap_MemcachedStatSt_bytes_written_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_written&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;limit_maxbytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint64_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;bytes_written&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;limit_maxbytes&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;bytes_written&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint64_t&quot;,&quot;limit_maxbytes&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint64_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;bytes_written = arg2;
+  if (arg1) (arg1)-&gt;limit_maxbytes = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4326,7 +4327,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedStatSt_bytes_written_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedStatSt_limit_maxbytes_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_stat_st *arg1 = (struct memcached_stat_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4338,10 +4339,10 @@ _wrap_MemcachedStatSt_bytes_written_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_stat_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;bytes_written&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_stat_st *&quot;,&quot;limit_maxbytes&quot;, 1, self )); 
   }
   arg1 = (struct memcached_stat_st *)(argp1);
-  result =  ((arg1)-&gt;bytes_written);
+  result =  ((arg1)-&gt;limit_maxbytes);
   {
     vresult = ULL2NUM(result);
   }
@@ -4557,28 +4558,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hosts_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_distribution_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_server_st *arg2 = (memcached_server_st *) 0 ;
+  uint8_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  unsigned short val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hosts&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;distribution&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_server_st, SWIG_POINTER_DISOWN |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_server_st *&quot;,&quot;hosts&quot;, 2, argv[0] )); 
-  }
-  arg2 = (memcached_server_st *)(argp2);
-  if (arg1) (arg1)-&gt;hosts = arg2;
+  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;distribution&quot;, 2, argv[0] ));
+  } 
+  arg2 = (uint8_t)(val2);
+  if (arg1) (arg1)-&gt;distribution = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4586,11 +4587,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hosts_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_distribution_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_server_st *result = 0 ;
+  uint8_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4598,46 +4599,58 @@ _wrap_MemcachedSt_hosts_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hosts&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;distribution&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (memcached_server_st *) ((arg1)-&gt;hosts);
-  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_server_st, 0 |  0 );
+  result =  ((arg1)-&gt;distribution);
+  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
   return vresult;
 fail:
   return Qnil;
 }
 
 
+
+/*
+  Document-method: Rlibmemcached::MemcachedSt.hash
+
+  call-seq:
+    hash -&gt; uint8_t
+
+Hashing function for class.
+*/
+
+/*
+  Document-method: Rlibmemcached::MemcachedSt.hash=
+
+  call-seq:
+    hash=(x) -&gt; uint8_t
+
+Hashing function for class.
+*/
 SWIGINTERN VALUE
-_wrap_MemcachedSt_number_of_hosts_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hash_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  uint8_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  unsigned short val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;number_of_hosts&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;number_of_hosts&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;number_of_hosts&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((uint32_t *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;number_of_hosts = arg2;
+  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;hash&quot;, 2, argv[0] ));
+  } 
+  arg2 = (uint8_t)(val2);
+  if (arg1) (arg1)-&gt;hash = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4645,11 +4658,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_number_of_hosts_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hash_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  uint8_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4657,13 +4670,11 @@ _wrap_MemcachedSt_number_of_hosts_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;number_of_hosts&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;number_of_hosts);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;hash);
+  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
   return vresult;
 fail:
   return Qnil;
@@ -4671,7 +4682,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_cursor_server_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_points_counter_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   uint32_t arg2 ;
   void *argp1 = 0 ;
@@ -4684,21 +4695,21 @@ _wrap_MemcachedSt_cursor_server_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cursor_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_points_counter&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
     res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;cursor_server&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;continuum_points_counter&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;cursor_server&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;continuum_points_counter&quot;, 2, argv[0]));
     } else {
       arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;cursor_server = arg2;
+  if (arg1) (arg1)-&gt;continuum_points_counter = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4706,7 +4717,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_cursor_server_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_points_counter_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -4718,10 +4729,10 @@ _wrap_MemcachedSt_cursor_server_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cursor_server&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_points_counter&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;cursor_server);
+  result =  ((arg1)-&gt;continuum_points_counter);
   {
     vresult = UINT2NUM(result);
   }
@@ -4732,28 +4743,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_cached_errno_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hosts_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int arg2 ;
+  memcached_server_st *arg2 = (memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cached_errno&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hosts&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;cached_errno&quot;, 2, argv[0] ));
-  } 
-  arg2 = (int)(val2);
-  if (arg1) (arg1)-&gt;cached_errno = arg2;
+  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_server_st, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_server_st *&quot;,&quot;hosts&quot;, 2, argv[0] )); 
+  }
+  arg2 = (memcached_server_st *)(argp2);
+  if (arg1) (arg1)-&gt;hosts = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4761,11 +4772,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_cached_errno_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hosts_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int result;
+  memcached_server_st *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4773,11 +4784,11 @@ _wrap_MemcachedSt_cached_errno_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cached_errno&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hosts&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (int) ((arg1)-&gt;cached_errno);
-  vresult = SWIG_From_int((int)(result));
+  result = (memcached_server_st *) ((arg1)-&gt;hosts);
+  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_server_st, 0 |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -4785,28 +4796,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_flags_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_snd_timeout_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  int32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned long val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;flags&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;snd_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;flags&quot;, 2, argv[0] ));
-  } 
-  arg2 = (uint32_t)(val2);
-  if (arg1) (arg1)-&gt;flags = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;snd_timeout&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;snd_timeout&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((int32_t *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;snd_timeout = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4814,11 +4831,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_flags_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_snd_timeout_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  int32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4826,11 +4843,11 @@ _wrap_MemcachedSt_flags_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;flags&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;snd_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;flags);
-  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
+  result =  ((arg1)-&gt;snd_timeout);
+  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -4838,28 +4855,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_send_size_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_rcv_timeout_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int arg2 ;
+  int32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;send_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;rcv_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;send_size&quot;, 2, argv[0] ));
-  } 
-  arg2 = (int)(val2);
-  if (arg1) (arg1)-&gt;send_size = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;rcv_timeout&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;rcv_timeout&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((int32_t *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;rcv_timeout = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4867,11 +4890,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_send_size_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_rcv_timeout_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int result;
+  int32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4879,11 +4902,11 @@ _wrap_MemcachedSt_send_size_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;send_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;rcv_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (int) ((arg1)-&gt;send_size);
-  vresult = SWIG_From_int((int)(result));
+  result =  ((arg1)-&gt;rcv_timeout);
+  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -4891,28 +4914,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_recv_size_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_server_failure_limit_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;recv_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;server_failure_limit&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;recv_size&quot;, 2, argv[0] ));
-  } 
-  arg2 = (int)(val2);
-  if (arg1) (arg1)-&gt;recv_size = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;server_failure_limit&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;server_failure_limit&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((uint32_t *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;server_failure_limit = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4920,11 +4949,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_recv_size_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_server_failure_limit_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4932,11 +4961,13 @@ _wrap_MemcachedSt_recv_size_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;recv_size&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;server_failure_limit&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (int) ((arg1)-&gt;recv_size);
-  vresult = SWIG_From_int((int)(result));
+  result =  ((arg1)-&gt;server_failure_limit);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -4944,9 +4975,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_poll_timeout_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_msg_watermark_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int32_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -4957,21 +4988,21 @@ _wrap_MemcachedSt_poll_timeout_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;poll_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_msg_watermark&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;poll_timeout&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_msg_watermark&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;poll_timeout&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_msg_watermark&quot;, 2, argv[0]));
     } else {
-      arg2 = *((int32_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;poll_timeout = arg2;
+  if (arg1) (arg1)-&gt;io_msg_watermark = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -4979,11 +5010,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_poll_timeout_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_msg_watermark_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int32_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -4991,11 +5022,13 @@ _wrap_MemcachedSt_poll_timeout_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;poll_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_msg_watermark&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;poll_timeout);
-  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;io_msg_watermark);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5003,9 +5036,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_connect_timeout_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_bytes_watermark_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int32_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5016,21 +5049,21 @@ _wrap_MemcachedSt_connect_timeout_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;connect_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_bytes_watermark&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;connect_timeout&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_bytes_watermark&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;connect_timeout&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_bytes_watermark&quot;, 2, argv[0]));
     } else {
-      arg2 = *((int32_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;connect_timeout = arg2;
+  if (arg1) (arg1)-&gt;io_bytes_watermark = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5038,11 +5071,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_connect_timeout_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_bytes_watermark_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int32_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5050,11 +5083,13 @@ _wrap_MemcachedSt_connect_timeout_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;connect_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_bytes_watermark&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;connect_timeout);
-  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;io_bytes_watermark);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5062,9 +5097,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_retry_timeout_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_key_prefetch_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int32_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5075,21 +5110,21 @@ _wrap_MemcachedSt_retry_timeout_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;retry_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_key_prefetch&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;retry_timeout&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_key_prefetch&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;retry_timeout&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_key_prefetch&quot;, 2, argv[0]));
     } else {
-      arg2 = *((int32_t *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;retry_timeout = arg2;
+  if (arg1) (arg1)-&gt;io_key_prefetch = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5097,11 +5132,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_retry_timeout_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_io_key_prefetch_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int32_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5109,11 +5144,13 @@ _wrap_MemcachedSt_retry_timeout_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;retry_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_key_prefetch&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;retry_timeout);
-  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;io_key_prefetch);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5121,9 +5158,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_result_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_number_of_hosts_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_result_st arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5134,21 +5171,21 @@ _wrap_MemcachedSt_result_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;result&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;number_of_hosts&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_result_st,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_result_st&quot;,&quot;result&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;number_of_hosts&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_result_st&quot;,&quot;result&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;number_of_hosts&quot;, 2, argv[0]));
     } else {
-      arg2 = *((memcached_result_st *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;result = arg2;
+  if (arg1) (arg1)-&gt;number_of_hosts = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5156,11 +5193,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_result_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_number_of_hosts_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_result_st result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5168,58 +5205,48 @@ _wrap_MemcachedSt_result_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;result&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;number_of_hosts&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;result);
-  vresult = SWIG_NewPointerObj((memcached_result_st *)memcpy((memcached_result_st *)malloc(sizeof(memcached_result_st)),&amp;result,sizeof(memcached_result_st)), SWIGTYPE_p_memcached_result_st, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;number_of_hosts);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
 }
 
 
-
-/*
-  Document-method: Rlibmemcached::MemcachedSt.hash
-
-  call-seq:
-    hash -&gt; int
-
-Hashing function for class.
-*/
-
-/*
-  Document-method: Rlibmemcached::MemcachedSt.hash=
-
-  call-seq:
-    hash=(x) -&gt; int
-
-Hashing function for class.
-*/
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hash_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_cursor_server_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_hash arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cursor_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_hash&quot;,&quot;hash&quot;, 2, argv[0] ));
-  } 
-  arg2 = (memcached_hash)(val2);
-  if (arg1) (arg1)-&gt;hash = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;cursor_server&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;cursor_server&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((uint32_t *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;cursor_server = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5227,11 +5254,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hash_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_cursor_server_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_hash result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5239,11 +5266,13 @@ _wrap_MemcachedSt_hash_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cursor_server&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (memcached_hash) ((arg1)-&gt;hash);
-  vresult = SWIG_From_int((int)(result));
+  result =  ((arg1)-&gt;cursor_server);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5251,9 +5280,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_distribution_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_cached_errno_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_server_distribution arg2 ;
+  int arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   int val2 ;
@@ -5264,15 +5293,15 @@ _wrap_MemcachedSt_distribution_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;distribution&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cached_errno&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_server_distribution&quot;,&quot;distribution&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;cached_errno&quot;, 2, argv[0] ));
   } 
-  arg2 = (memcached_server_distribution)(val2);
-  if (arg1) (arg1)-&gt;distribution = arg2;
+  arg2 = (int)(val2);
+  if (arg1) (arg1)-&gt;cached_errno = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5280,11 +5309,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_distribution_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_cached_errno_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_server_distribution result;
+  int result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5292,10 +5321,10 @@ _wrap_MemcachedSt_distribution_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;distribution&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;cached_errno&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (memcached_server_distribution) ((arg1)-&gt;distribution);
+  result = (int) ((arg1)-&gt;cached_errno);
   vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
@@ -5304,26 +5333,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_user_data_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_flags_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  void *arg2 = (void *) 0 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int res2 ;
+  unsigned long val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;user_data&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;flags&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  res2 = SWIG_ConvertPtr(argv[0],SWIG_as_voidptrptr(&amp;arg2), 0, SWIG_POINTER_DISOWN);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;void *&quot;,&quot;user_data&quot;, 2, argv[0] )); 
-  }
-  if (arg1) (arg1)-&gt;user_data = arg2;
+  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;flags&quot;, 2, argv[0] ));
+  } 
+  arg2 = (uint32_t)(val2);
+  if (arg1) (arg1)-&gt;flags = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5331,11 +5362,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_user_data_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_flags_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *result = 0 ;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5343,11 +5374,11 @@ _wrap_MemcachedSt_user_data_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;user_data&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;flags&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (void *) ((arg1)-&gt;user_data);
-  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
+  result =  ((arg1)-&gt;flags);
+  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
   return vresult;
 fail:
   return Qnil;
@@ -5355,9 +5386,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_count_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_poll_timeout_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  int32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5368,21 +5399,21 @@ _wrap_MemcachedSt_continuum_count_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_count&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;poll_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;continuum_count&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;poll_timeout&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;continuum_count&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;poll_timeout&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((int32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;continuum_count = arg2;
+  if (arg1) (arg1)-&gt;poll_timeout = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5390,11 +5421,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_count_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_poll_timeout_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  int32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5402,13 +5433,11 @@ _wrap_MemcachedSt_continuum_count_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_count&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;poll_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;continuum_count);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;poll_timeout);
+  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -5416,12 +5445,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_connect_timeout_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_continuum_item_st *arg2 = (memcached_continuum_item_st *) 0 ;
+  int32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
+  void *argp2 ;
   int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -5429,15 +5458,21 @@ _wrap_MemcachedSt_continuum_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;connect_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_continuum_item_st, SWIG_POINTER_DISOWN |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_continuum_item_st *&quot;,&quot;continuum&quot;, 2, argv[0] )); 
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;connect_timeout&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;connect_timeout&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((int32_t *)(argp2));
+    }
   }
-  arg2 = (memcached_continuum_item_st *)(argp2);
-  if (arg1) (arg1)-&gt;continuum = arg2;
+  if (arg1) (arg1)-&gt;connect_timeout = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5445,11 +5480,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_connect_timeout_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_continuum_item_st *result = 0 ;
+  int32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5457,11 +5492,11 @@ _wrap_MemcachedSt_continuum_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;connect_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (memcached_continuum_item_st *) ((arg1)-&gt;continuum);
-  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_continuum_item_st, 0 |  0 );
+  result =  ((arg1)-&gt;connect_timeout);
+  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -5469,9 +5504,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_on_clone_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_retry_timeout_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_clone_func arg2 ;
+  int32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5482,21 +5517,21 @@ _wrap_MemcachedSt_on_clone_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_clone&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;retry_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_clone_func,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_clone_func&quot;,&quot;on_clone&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;retry_timeout&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_clone_func&quot;,&quot;on_clone&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;retry_timeout&quot;, 2, argv[0]));
     } else {
-      arg2 = *((memcached_clone_func *)(argp2));
+      arg2 = *((int32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;on_clone = arg2;
+  if (arg1) (arg1)-&gt;retry_timeout = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5504,11 +5539,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_on_clone_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_retry_timeout_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_clone_func result;
+  int32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5516,11 +5551,11 @@ _wrap_MemcachedSt_on_clone_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_clone&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;retry_timeout&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;on_clone);
-  vresult = SWIG_NewPointerObj((memcached_clone_func *)memcpy((memcached_clone_func *)malloc(sizeof(memcached_clone_func)),&amp;result,sizeof(memcached_clone_func)), SWIGTYPE_p_memcached_clone_func, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;retry_timeout);
+  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -5528,9 +5563,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_on_cleanup_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_count_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_cleanup_func arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -5541,21 +5576,21 @@ _wrap_MemcachedSt_on_cleanup_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_cleanup&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_count&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_cleanup_func,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_cleanup_func&quot;,&quot;on_cleanup&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;continuum_count&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_cleanup_func&quot;,&quot;on_cleanup&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;continuum_count&quot;, 2, argv[0]));
     } else {
-      arg2 = *((memcached_cleanup_func *)(argp2));
+      arg2 = *((uint32_t *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;on_cleanup = arg2;
+  if (arg1) (arg1)-&gt;continuum_count = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5563,11 +5598,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_on_cleanup_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_count_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_cleanup_func result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5575,11 +5610,13 @@ _wrap_MemcachedSt_on_cleanup_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_cleanup&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_count&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;on_cleanup);
-  vresult = SWIG_NewPointerObj((memcached_cleanup_func *)memcpy((memcached_cleanup_func *)malloc(sizeof(memcached_cleanup_func)),&amp;result,sizeof(memcached_cleanup_func)), SWIGTYPE_p_memcached_cleanup_func, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;continuum_count);
+  {
+    vresult = UINT2NUM(result);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5587,34 +5624,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_free_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_send_size_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_free_function arg2 ;
+  int arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_free&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;send_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_free_function,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_free_function&quot;,&quot;call_free&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_free_function&quot;,&quot;call_free&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_free_function *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;call_free = arg2;
+  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;send_size&quot;, 2, argv[0] ));
+  } 
+  arg2 = (int)(val2);
+  if (arg1) (arg1)-&gt;send_size = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5622,11 +5653,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_free_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_send_size_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_free_function result;
+  int result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5634,11 +5665,11 @@ _wrap_MemcachedSt_call_free_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_free&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;send_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;call_free);
-  vresult = SWIG_NewPointerObj((memcached_free_function *)memcpy((memcached_free_function *)malloc(sizeof(memcached_free_function)),&amp;result,sizeof(memcached_free_function)), SWIGTYPE_p_memcached_free_function, SWIG_POINTER_OWN |  0 );
+  result = (int) ((arg1)-&gt;send_size);
+  vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -5646,34 +5677,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_malloc_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_recv_size_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_malloc_function arg2 ;
+  int arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_malloc&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;recv_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_malloc_function,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_malloc_function&quot;,&quot;call_malloc&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_malloc_function&quot;,&quot;call_malloc&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_malloc_function *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;call_malloc = arg2;
+  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;recv_size&quot;, 2, argv[0] ));
+  } 
+  arg2 = (int)(val2);
+  if (arg1) (arg1)-&gt;recv_size = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5681,11 +5706,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_malloc_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_recv_size_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_malloc_function result;
+  int result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5693,11 +5718,11 @@ _wrap_MemcachedSt_call_malloc_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_malloc&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;recv_size&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;call_malloc);
-  vresult = SWIG_NewPointerObj((memcached_malloc_function *)memcpy((memcached_malloc_function *)malloc(sizeof(memcached_malloc_function)),&amp;result,sizeof(memcached_malloc_function)), SWIGTYPE_p_memcached_malloc_function, SWIG_POINTER_OWN |  0 );
+  result = (int) ((arg1)-&gt;recv_size);
+  vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -5705,34 +5730,26 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_realloc_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_user_data_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_realloc_function arg2 ;
+  void *arg2 = (void *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_realloc&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;user_data&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_realloc_function,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_realloc_function&quot;,&quot;call_realloc&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_realloc_function&quot;,&quot;call_realloc&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_realloc_function *)(argp2));
-    }
+  res2 = SWIG_ConvertPtr(argv[0],SWIG_as_voidptrptr(&amp;arg2), 0, SWIG_POINTER_DISOWN);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;void *&quot;,&quot;user_data&quot;, 2, argv[0] )); 
   }
-  if (arg1) (arg1)-&gt;call_realloc = arg2;
+  if (arg1) (arg1)-&gt;user_data = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5740,11 +5757,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_call_realloc_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_user_data_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_realloc_function result;
+  void *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5752,11 +5769,11 @@ _wrap_MemcachedSt_call_realloc_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_realloc&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;user_data&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;call_realloc);
-  vresult = SWIG_NewPointerObj((memcached_realloc_function *)memcpy((memcached_realloc_function *)malloc(sizeof(memcached_realloc_function)),&amp;result,sizeof(memcached_realloc_function)), SWIGTYPE_p_memcached_realloc_function, SWIG_POINTER_OWN |  0 );
+  result = (void *) ((arg1)-&gt;user_data);
+  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_void, 0 |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -5764,34 +5781,27 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_get_key_failure_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_next_distribution_rebuild_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_trigger_key arg2 ;
+  time_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;get_key_failure&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;next_distribution_rebuild&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_trigger_key,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_trigger_key&quot;,&quot;get_key_failure&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_trigger_key&quot;,&quot;get_key_failure&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_trigger_key *)(argp2));
-    }
+    if (NIL_P(argv[0]))
+    arg2 = (time_t)-1;
+    else
+    arg2 = NUM2LONG(rb_funcall(argv[0], rb_intern(&quot;tv_sec&quot;), 0));
   }
-  if (arg1) (arg1)-&gt;get_key_failure = arg2;
+  if (arg1) (arg1)-&gt;next_distribution_rebuild = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5799,11 +5809,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_get_key_failure_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_next_distribution_rebuild_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_trigger_key result;
+  time_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5811,11 +5821,13 @@ _wrap_MemcachedSt_get_key_failure_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;get_key_failure&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;next_distribution_rebuild&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;get_key_failure);
-  vresult = SWIG_NewPointerObj((memcached_trigger_key *)memcpy((memcached_trigger_key *)malloc(sizeof(memcached_trigger_key)),&amp;result,sizeof(memcached_trigger_key)), SWIGTYPE_p_memcached_trigger_key, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;next_distribution_rebuild);
+  {
+    vresult = rb_time_new(result, 0);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -5823,34 +5835,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_delete_trigger_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_prefix_key_length_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_trigger_delete_key arg2 ;
+  size_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  size_t val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;delete_trigger&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_trigger_delete_key,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_trigger_delete_key&quot;,&quot;delete_trigger&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_trigger_delete_key&quot;,&quot;delete_trigger&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_trigger_delete_key *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;delete_trigger = arg2;
+  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;prefix_key_length&quot;, 2, argv[0] ));
+  } 
+  arg2 = (size_t)(val2);
+  if (arg1) (arg1)-&gt;prefix_key_length = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5858,11 +5864,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_delete_trigger_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_prefix_key_length_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_trigger_delete_key result;
+  size_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5870,11 +5876,11 @@ _wrap_MemcachedSt_delete_trigger_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;delete_trigger&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;delete_trigger);
-  vresult = SWIG_NewPointerObj((memcached_trigger_delete_key *)memcpy((memcached_trigger_delete_key *)malloc(sizeof(memcached_trigger_delete_key)),&amp;result,sizeof(memcached_trigger_delete_key)), SWIGTYPE_p_memcached_trigger_delete_key, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;prefix_key_length);
+  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -5882,29 +5888,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_prefix_key_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hash_continuum_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  char *arg2 ;
+  memcached_hash arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char temp2[MEMCACHED_PREFIX_KEY_MAX_SIZE] ;
-  int res2 ;
+  int val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash_continuum&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  res2 = SWIG_AsCharArray(argv[0], temp2, MEMCACHED_PREFIX_KEY_MAX_SIZE);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [MEMCACHED_PREFIX_KEY_MAX_SIZE]&quot;,&quot;prefix_key&quot;, 2, argv[0] ));
-  }
-  arg2 = (char *)(temp2);
-  if (arg2) memcpy(arg1-&gt;prefix_key,arg2,MEMCACHED_PREFIX_KEY_MAX_SIZE*sizeof(char));
-  else memset(arg1-&gt;prefix_key,0,MEMCACHED_PREFIX_KEY_MAX_SIZE*sizeof(char));
+  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_hash&quot;,&quot;hash_continuum&quot;, 2, argv[0] ));
+  } 
+  arg2 = (memcached_hash)(val2);
+  if (arg1) (arg1)-&gt;hash_continuum = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5912,11 +5917,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_prefix_key_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_hash_continuum_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  memcached_hash result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5924,17 +5929,11 @@ _wrap_MemcachedSt_prefix_key_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash_continuum&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (char *)(char *) ((arg1)-&gt;prefix_key);
-  {
-    size_t size = MEMCACHED_PREFIX_KEY_MAX_SIZE;
-    
-    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
-    
-    vresult = SWIG_FromCharPtrAndSize(result, size);
-  }
+  result = (memcached_hash) ((arg1)-&gt;hash_continuum);
+  vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -5942,28 +5941,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_prefix_key_length_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_result_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  size_t arg2 ;
+  memcached_result_st arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;result&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;prefix_key_length&quot;, 2, argv[0] ));
-  } 
-  arg2 = (size_t)(val2);
-  if (arg1) (arg1)-&gt;prefix_key_length = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_result_st,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_result_st&quot;,&quot;result&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_result_st&quot;,&quot;result&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((memcached_result_st *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;result = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -5971,11 +5976,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_prefix_key_length_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_result_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t result;
+  memcached_result_st result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -5983,11 +5988,11 @@ _wrap_MemcachedSt_prefix_key_length_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;result&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;prefix_key_length);
-  vresult = SWIG_From_size_t((size_t)(result));
+  result =  ((arg1)-&gt;result);
+  vresult = SWIG_NewPointerObj((memcached_result_st *)memcpy((memcached_result_st *)malloc(sizeof(memcached_result_st)),&amp;result,sizeof(memcached_result_st)), SWIGTYPE_p_memcached_result_st, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -5995,28 +6000,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hash_continuum_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  memcached_hash arg2 ;
+  memcached_continuum_item_st *arg2 = (memcached_continuum_item_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash_continuum&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_hash&quot;,&quot;hash_continuum&quot;, 2, argv[0] ));
-  } 
-  arg2 = (memcached_hash)(val2);
-  if (arg1) (arg1)-&gt;hash_continuum = arg2;
+  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_continuum_item_st, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_continuum_item_st *&quot;,&quot;continuum&quot;, 2, argv[0] )); 
+  }
+  arg2 = (memcached_continuum_item_st *)(argp2);
+  if (arg1) (arg1)-&gt;continuum = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6024,11 +6029,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_hash_continuum_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_continuum_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_hash result;
+  memcached_continuum_item_st *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6036,11 +6041,11 @@ _wrap_MemcachedSt_hash_continuum_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;hash_continuum&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result = (memcached_hash) ((arg1)-&gt;hash_continuum);
-  vresult = SWIG_From_int((int)(result));
+  result = (memcached_continuum_item_st *) ((arg1)-&gt;continuum);
+  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_continuum_item_st, 0 |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6048,9 +6053,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_points_counter_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_on_clone_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  memcached_clone_func arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6061,21 +6066,21 @@ _wrap_MemcachedSt_continuum_points_counter_set(int argc, VALUE *argv, VALUE self
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_points_counter&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_clone&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_clone_func,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;continuum_points_counter&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_clone_func&quot;,&quot;on_clone&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;continuum_points_counter&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_clone_func&quot;,&quot;on_clone&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((memcached_clone_func *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;continuum_points_counter = arg2;
+  if (arg1) (arg1)-&gt;on_clone = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6083,11 +6088,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_continuum_points_counter_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_on_clone_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  memcached_clone_func result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6095,13 +6100,11 @@ _wrap_MemcachedSt_continuum_points_counter_get(int argc, VALUE *argv, VALUE self
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;continuum_points_counter&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_clone&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;continuum_points_counter);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;on_clone);
+  vresult = SWIG_NewPointerObj((memcached_clone_func *)memcpy((memcached_clone_func *)malloc(sizeof(memcached_clone_func)),&amp;result,sizeof(memcached_clone_func)), SWIGTYPE_p_memcached_clone_func, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6109,9 +6112,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_snd_timeout_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_on_cleanup_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int32_t arg2 ;
+  memcached_cleanup_func arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6122,21 +6125,21 @@ _wrap_MemcachedSt_snd_timeout_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;snd_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_cleanup&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_cleanup_func,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;snd_timeout&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_cleanup_func&quot;,&quot;on_cleanup&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;snd_timeout&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_cleanup_func&quot;,&quot;on_cleanup&quot;, 2, argv[0]));
     } else {
-      arg2 = *((int32_t *)(argp2));
+      arg2 = *((memcached_cleanup_func *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;snd_timeout = arg2;
+  if (arg1) (arg1)-&gt;on_cleanup = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6144,11 +6147,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_snd_timeout_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_on_cleanup_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int32_t result;
+  memcached_cleanup_func result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6156,11 +6159,11 @@ _wrap_MemcachedSt_snd_timeout_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;snd_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;on_cleanup&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;snd_timeout);
-  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;on_cleanup);
+  vresult = SWIG_NewPointerObj((memcached_cleanup_func *)memcpy((memcached_cleanup_func *)malloc(sizeof(memcached_cleanup_func)),&amp;result,sizeof(memcached_cleanup_func)), SWIGTYPE_p_memcached_cleanup_func, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6168,9 +6171,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_rcv_timeout_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_free_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  int32_t arg2 ;
+  memcached_free_function arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6181,21 +6184,21 @@ _wrap_MemcachedSt_rcv_timeout_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;rcv_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_free&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_int32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_free_function,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;int32_t&quot;,&quot;rcv_timeout&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_free_function&quot;,&quot;call_free&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;int32_t&quot;,&quot;rcv_timeout&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_free_function&quot;,&quot;call_free&quot;, 2, argv[0]));
     } else {
-      arg2 = *((int32_t *)(argp2));
+      arg2 = *((memcached_free_function *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;rcv_timeout = arg2;
+  if (arg1) (arg1)-&gt;call_free = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6203,11 +6206,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_rcv_timeout_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_free_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int32_t result;
+  memcached_free_function result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6215,11 +6218,11 @@ _wrap_MemcachedSt_rcv_timeout_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;rcv_timeout&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_free&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;rcv_timeout);
-  vresult = SWIG_NewPointerObj((int32_t *)memcpy((int32_t *)malloc(sizeof(int32_t)),&amp;result,sizeof(int32_t)), SWIGTYPE_p_int32_t, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;call_free);
+  vresult = SWIG_NewPointerObj((memcached_free_function *)memcpy((memcached_free_function *)malloc(sizeof(memcached_free_function)),&amp;result,sizeof(memcached_free_function)), SWIGTYPE_p_memcached_free_function, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6227,9 +6230,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_server_failure_limit_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_malloc_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  memcached_malloc_function arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6240,21 +6243,21 @@ _wrap_MemcachedSt_server_failure_limit_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;server_failure_limit&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_malloc&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_malloc_function,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;server_failure_limit&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_malloc_function&quot;,&quot;call_malloc&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;server_failure_limit&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_malloc_function&quot;,&quot;call_malloc&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((memcached_malloc_function *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;server_failure_limit = arg2;
+  if (arg1) (arg1)-&gt;call_malloc = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6262,11 +6265,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_server_failure_limit_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_malloc_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  memcached_malloc_function result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6274,13 +6277,11 @@ _wrap_MemcachedSt_server_failure_limit_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;server_failure_limit&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_malloc&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;server_failure_limit);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;call_malloc);
+  vresult = SWIG_NewPointerObj((memcached_malloc_function *)memcpy((memcached_malloc_function *)malloc(sizeof(memcached_malloc_function)),&amp;result,sizeof(memcached_malloc_function)), SWIGTYPE_p_memcached_malloc_function, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6288,9 +6289,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_msg_watermark_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_realloc_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  memcached_realloc_function arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6301,21 +6302,21 @@ _wrap_MemcachedSt_io_msg_watermark_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_msg_watermark&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_realloc&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_realloc_function,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_msg_watermark&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_realloc_function&quot;,&quot;call_realloc&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_msg_watermark&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_realloc_function&quot;,&quot;call_realloc&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((memcached_realloc_function *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;io_msg_watermark = arg2;
+  if (arg1) (arg1)-&gt;call_realloc = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6323,11 +6324,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_msg_watermark_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_call_realloc_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  memcached_realloc_function result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6335,13 +6336,11 @@ _wrap_MemcachedSt_io_msg_watermark_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_msg_watermark&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;call_realloc&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;io_msg_watermark);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;call_realloc);
+  vresult = SWIG_NewPointerObj((memcached_realloc_function *)memcpy((memcached_realloc_function *)malloc(sizeof(memcached_realloc_function)),&amp;result,sizeof(memcached_realloc_function)), SWIGTYPE_p_memcached_realloc_function, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6349,9 +6348,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_bytes_watermark_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_get_key_failure_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  memcached_trigger_key arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6362,21 +6361,21 @@ _wrap_MemcachedSt_io_bytes_watermark_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_bytes_watermark&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;get_key_failure&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_trigger_key,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_bytes_watermark&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_trigger_key&quot;,&quot;get_key_failure&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_bytes_watermark&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_trigger_key&quot;,&quot;get_key_failure&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((memcached_trigger_key *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;io_bytes_watermark = arg2;
+  if (arg1) (arg1)-&gt;get_key_failure = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6384,11 +6383,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_bytes_watermark_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_get_key_failure_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  memcached_trigger_key result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6396,13 +6395,11 @@ _wrap_MemcachedSt_io_bytes_watermark_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_bytes_watermark&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;get_key_failure&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;io_bytes_watermark);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;get_key_failure);
+  vresult = SWIG_NewPointerObj((memcached_trigger_key *)memcpy((memcached_trigger_key *)malloc(sizeof(memcached_trigger_key)),&amp;result,sizeof(memcached_trigger_key)), SWIGTYPE_p_memcached_trigger_key, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6410,9 +6407,9 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_key_prefetch_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_delete_trigger_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  uint32_t arg2 ;
+  memcached_trigger_delete_key arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
   void *argp2 ;
@@ -6423,21 +6420,21 @@ _wrap_MemcachedSt_io_key_prefetch_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_key_prefetch&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;delete_trigger&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
   {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_trigger_delete_key,  0 );
     if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_key_prefetch&quot;, 2, argv[0] )); 
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_trigger_delete_key&quot;,&quot;delete_trigger&quot;, 2, argv[0] )); 
     }  
     if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_key_prefetch&quot;, 2, argv[0]));
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_trigger_delete_key&quot;,&quot;delete_trigger&quot;, 2, argv[0]));
     } else {
-      arg2 = *((uint32_t *)(argp2));
+      arg2 = *((memcached_trigger_delete_key *)(argp2));
     }
   }
-  if (arg1) (arg1)-&gt;io_key_prefetch = arg2;
+  if (arg1) (arg1)-&gt;delete_trigger = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -6445,11 +6442,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_io_key_prefetch_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_delete_trigger_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  memcached_trigger_delete_key result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6457,13 +6454,11 @@ _wrap_MemcachedSt_io_key_prefetch_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;io_key_prefetch&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;delete_trigger&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;io_key_prefetch);
-  {
-    vresult = UINT2NUM(result);
-  }
+  result =  ((arg1)-&gt;delete_trigger);
+  vresult = SWIG_NewPointerObj((memcached_trigger_delete_key *)memcpy((memcached_trigger_delete_key *)malloc(sizeof(memcached_trigger_delete_key)),&amp;result,sizeof(memcached_trigger_delete_key)), SWIGTYPE_p_memcached_trigger_delete_key, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -6471,27 +6466,29 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_next_distribution_rebuild_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_prefix_key_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
-  time_t arg2 ;
+  char *arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
+  char temp2[MEMCACHED_PREFIX_KEY_MAX_SIZE] ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;next_distribution_rebuild&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  {
-    if (NIL_P(argv[0]))
-    arg2 = (time_t)-1;
-    else
-    arg2 = NUM2LONG(rb_funcall(argv[0], rb_intern(&quot;tv_sec&quot;), 0));
+  res2 = SWIG_AsCharArray(argv[0], temp2, MEMCACHED_PREFIX_KEY_MAX_SIZE);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [MEMCACHED_PREFIX_KEY_MAX_SIZE]&quot;,&quot;prefix_key&quot;, 2, argv[0] ));
   }
-  if (arg1) (arg1)-&gt;next_distribution_rebuild = arg2;
+  arg2 = (char *)(temp2);
+  if (arg2) memcpy(arg1-&gt;prefix_key,arg2,MEMCACHED_PREFIX_KEY_MAX_SIZE*sizeof(char));
+  else memset(arg1-&gt;prefix_key,0,MEMCACHED_PREFIX_KEY_MAX_SIZE*sizeof(char));
   return Qnil;
 fail:
   return Qnil;
@@ -6499,11 +6496,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedSt_next_distribution_rebuild_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedSt_prefix_key_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_st *arg1 = (struct memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  time_t result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -6511,12 +6508,16 @@ _wrap_MemcachedSt_next_distribution_rebuild_get(int argc, VALUE *argv, VALUE sel
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;next_distribution_rebuild&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_st *&quot;,&quot;prefix_key&quot;, 1, self )); 
   }
   arg1 = (struct memcached_st *)(argp1);
-  result =  ((arg1)-&gt;next_distribution_rebuild);
+  result = (char *)(char *) ((arg1)-&gt;prefix_key);
   {
-    vresult = rb_time_new(result, 0);
+    size_t size = MEMCACHED_PREFIX_KEY_MAX_SIZE;
+    
+    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
+    
+    vresult = SWIG_FromCharPtrAndSize(result, size);
   }
   return vresult;
 fail:
@@ -7283,6 +7284,38 @@ fail:
 
 
 SWIGINTERN VALUE
+_wrap_memcached_generate_hash(int argc, VALUE *argv, VALUE self) {
+  memcached_st *arg1 = (memcached_st *) 0 ;
+  char *arg2 = (char *) 0 ;
+  size_t arg3 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  uint32_t result;
+  VALUE vresult = Qnil;
+  
+  if ((argc &lt; 2) || (argc &gt; 2)) {
+    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 2)&quot;,argc); SWIG_fail;
+  }
+  res1 = SWIG_ConvertPtr(argv[0], &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_st *&quot;,&quot;memcached_generate_hash&quot;, 1, argv[0] )); 
+  }
+  arg1 = (memcached_st *)(argp1);
+  {
+    arg2 = STR2CSTR(argv[1]);
+    arg3 = (size_t) RSTRING_LEN(argv[1]);
+  }
+  result = memcached_generate_hash(arg1,(char const *)arg2,arg3);
+  {
+    vresult = UINT2NUM(result);
+  }
+  return vresult;
+fail:
+  return Qnil;
+}
+
+
+SWIGINTERN VALUE
 _wrap_memcached_flush_buffers(int argc, VALUE *argv, VALUE self) {
   memcached_st *arg1 = (memcached_st *) 0 ;
   void *argp1 = 0 ;
@@ -8059,6 +8092,58 @@ fail:
 
 
 SWIGINTERN VALUE
+_wrap_memcached_dump(int argc, VALUE *argv, VALUE self) {
+  memcached_st *arg1 = (memcached_st *) 0 ;
+  memcached_dump_func *arg2 = (memcached_dump_func *) 0 ;
+  void *arg3 = (void *) 0 ;
+  uint32_t arg4 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
+  int res3 ;
+  void *argp4 ;
+  int res4 = 0 ;
+  memcached_return result;
+  VALUE vresult = Qnil;
+  
+  if ((argc &lt; 4) || (argc &gt; 4)) {
+    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 4)&quot;,argc); SWIG_fail;
+  }
+  res1 = SWIG_ConvertPtr(argv[0], &amp;argp1,SWIGTYPE_p_memcached_st, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_st *&quot;,&quot;memcached_dump&quot;, 1, argv[0] )); 
+  }
+  arg1 = (memcached_st *)(argp1);
+  res2 = SWIG_ConvertPtr(argv[1], &amp;argp2,SWIGTYPE_p_memcached_dump_func, 0 |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_dump_func *&quot;,&quot;memcached_dump&quot;, 2, argv[1] )); 
+  }
+  arg2 = (memcached_dump_func *)(argp2);
+  res3 = SWIG_ConvertPtr(argv[2],SWIG_as_voidptrptr(&amp;arg3), 0, 0);
+  if (!SWIG_IsOK(res3)) {
+    SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( &quot;&quot;, &quot;void *&quot;,&quot;memcached_dump&quot;, 3, argv[2] )); 
+  }
+  {
+    res4 = SWIG_ConvertPtr(argv[3], &amp;argp4, SWIGTYPE_p_uint32_t,  0 );
+    if (!SWIG_IsOK(res4)) {
+      SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;memcached_dump&quot;, 4, argv[3] )); 
+    }  
+    if (!argp4) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;memcached_dump&quot;, 4, argv[3]));
+    } else {
+      arg4 = *((uint32_t *)(argp4));
+    }
+  }
+  result = (memcached_return)memcached_dump(arg1,arg2,arg3,arg4);
+  vresult = SWIG_From_int((int)(result));
+  return vresult;
+fail:
+  return Qnil;
+}
+
+
+SWIGINTERN VALUE
 _wrap_memcached_get(int argc, VALUE *argv, VALUE self) {
   memcached_st *arg1 = (memcached_st *) 0 ;
   char *arg2 = (char *) 0 ;
@@ -9042,12 +9127,12 @@ fail:
 swig_class cMemcachedResultSt;
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_is_allocated_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_flags_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  bool arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  bool val2 ;
+  unsigned long val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -9055,15 +9140,15 @@ _wrap_MemcachedResultSt_is_allocated_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;is_allocated&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;flags&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  ecode2 = SWIG_AsVal_bool(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;bool&quot;,&quot;is_allocated&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;flags&quot;, 2, argv[0] ));
   } 
-  arg2 = (bool)(val2);
-  if (arg1) (arg1)-&gt;is_allocated = arg2;
+  arg2 = (uint32_t)(val2);
+  if (arg1) (arg1)-&gt;flags = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9071,11 +9156,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_is_allocated_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_flags_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  bool result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9083,11 +9168,11 @@ _wrap_MemcachedResultSt_is_allocated_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;is_allocated&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;flags&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result = (bool) ((arg1)-&gt;is_allocated);
-  vresult = SWIG_From_bool((bool)(result));
+  result =  ((arg1)-&gt;flags);
+  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
   return vresult;
 fail:
   return Qnil;
@@ -9095,28 +9180,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_root_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_is_allocated_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  memcached_st *arg2 = (memcached_st *) 0 ;
+  bool arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  bool val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;root&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;is_allocated&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_st, SWIG_POINTER_DISOWN |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_st *&quot;,&quot;root&quot;, 2, argv[0] )); 
-  }
-  arg2 = (memcached_st *)(argp2);
-  if (arg1) (arg1)-&gt;root = arg2;
+  ecode2 = SWIG_AsVal_bool(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;bool&quot;,&quot;is_allocated&quot;, 2, argv[0] ));
+  } 
+  arg2 = (bool)(val2);
+  if (arg1) (arg1)-&gt;is_allocated = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9124,11 +9209,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_root_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_is_allocated_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_st *result = 0 ;
+  bool result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9136,11 +9221,11 @@ _wrap_MemcachedResultSt_root_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;root&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;is_allocated&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result = (memcached_st *) ((arg1)-&gt;root);
-  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_st, 0 |  0 );
+  result = (bool) ((arg1)-&gt;is_allocated);
+  vresult = SWIG_From_bool((bool)(result));
   return vresult;
 fail:
   return Qnil;
@@ -9148,29 +9233,27 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_key_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_expiration_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  char *arg2 ;
+  time_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char temp2[251] ;
-  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;expiration&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  res2 = SWIG_AsCharArray(argv[0], temp2, 251);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [251]&quot;,&quot;key&quot;, 2, argv[0] ));
+  {
+    if (NIL_P(argv[0]))
+    arg2 = (time_t)-1;
+    else
+    arg2 = NUM2LONG(rb_funcall(argv[0], rb_intern(&quot;tv_sec&quot;), 0));
   }
-  arg2 = (char *)(temp2);
-  if (arg2) memcpy(arg1-&gt;key,arg2,251*sizeof(char));
-  else memset(arg1-&gt;key,0,251*sizeof(char));
+  if (arg1) (arg1)-&gt;expiration = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9178,11 +9261,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_key_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_expiration_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  time_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9190,16 +9273,12 @@ _wrap_MemcachedResultSt_key_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;expiration&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result = (char *)(char *) ((arg1)-&gt;key);
+  result =  ((arg1)-&gt;expiration);
   {
-    size_t size = 251;
-    
-    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
-    
-    vresult = SWIG_FromCharPtrAndSize(result, size);
+    vresult = rb_time_new(result, 0);
   }
   return vresult;
 fail:
@@ -9208,28 +9287,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_key_length_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_root_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  size_t arg2 ;
+  memcached_st *arg2 = (memcached_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t val2 ;
-  int ecode2 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;root&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;key_length&quot;, 2, argv[0] ));
-  } 
-  arg2 = (size_t)(val2);
-  if (arg1) (arg1)-&gt;key_length = arg2;
+  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_memcached_st, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_st *&quot;,&quot;root&quot;, 2, argv[0] )); 
+  }
+  arg2 = (memcached_st *)(argp2);
+  if (arg1) (arg1)-&gt;root = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9237,11 +9316,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_key_length_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_root_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t result;
+  memcached_st *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9249,11 +9328,11 @@ _wrap_MemcachedResultSt_key_length_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;root&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result =  ((arg1)-&gt;key_length);
-  vresult = SWIG_From_size_t((size_t)(result));
+  result = (memcached_st *) ((arg1)-&gt;root);
+  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_memcached_st, 0 |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -9261,34 +9340,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_value_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_key_length_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  memcached_string_st arg2 ;
+  size_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  size_t val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;value&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_string_st,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_string_st&quot;,&quot;value&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_string_st&quot;,&quot;value&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((memcached_string_st *)(argp2));
-    }
-  }
-  if (arg1) (arg1)-&gt;value = arg2;
+  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;key_length&quot;, 2, argv[0] ));
+  } 
+  arg2 = (size_t)(val2);
+  if (arg1) (arg1)-&gt;key_length = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9296,11 +9369,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_value_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_key_length_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_string_st result;
+  size_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9308,11 +9381,11 @@ _wrap_MemcachedResultSt_value_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;value&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result =  ((arg1)-&gt;value);
-  vresult = SWIG_NewPointerObj((memcached_string_st *)memcpy((memcached_string_st *)malloc(sizeof(memcached_string_st)),&amp;result,sizeof(memcached_string_st)), SWIGTYPE_p_memcached_string_st, SWIG_POINTER_OWN |  0 );
+  result =  ((arg1)-&gt;key_length);
+  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -9320,12 +9393,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_flags_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_cas_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  uint32_t arg2 ;
+  uint64_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned long val2 ;
+  unsigned long long val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -9333,15 +9406,15 @@ _wrap_MemcachedResultSt_flags_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;flags&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;cas&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_long_SS_long(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;flags&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cas&quot;, 2, argv[0] ));
   } 
-  arg2 = (uint32_t)(val2);
-  if (arg1) (arg1)-&gt;flags = arg2;
+  arg2 = (uint64_t)(val2);
+  if (arg1) (arg1)-&gt;cas = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9349,11 +9422,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_flags_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_cas_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  uint64_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9361,11 +9434,11 @@ _wrap_MemcachedResultSt_flags_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;flags&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;cas&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result =  ((arg1)-&gt;flags);
-  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
+  result =  ((arg1)-&gt;cas);
+  vresult = SWIG_From_unsigned_SS_long_SS_long((unsigned long long)(result));
   return vresult;
 fail:
   return Qnil;
@@ -9373,28 +9446,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_cas_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_value_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  uint64_t arg2 ;
+  memcached_string_st arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned long long val2 ;
-  int ecode2 = 0 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;cas&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;value&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_long_SS_long(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint64_t&quot;,&quot;cas&quot;, 2, argv[0] ));
-  } 
-  arg2 = (uint64_t)(val2);
-  if (arg1) (arg1)-&gt;cas = arg2;
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_memcached_string_st,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_string_st&quot;,&quot;value&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;memcached_string_st&quot;,&quot;value&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((memcached_string_st *)(argp2));
+    }
+  }
+  if (arg1) (arg1)-&gt;value = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9402,11 +9481,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_cas_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_value_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint64_t result;
+  memcached_string_st result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9414,11 +9493,11 @@ _wrap_MemcachedResultSt_cas_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;cas&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;value&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result =  ((arg1)-&gt;cas);
-  vresult = SWIG_From_unsigned_SS_long_SS_long((unsigned long long)(result));
+  result =  ((arg1)-&gt;value);
+  vresult = SWIG_NewPointerObj((memcached_string_st *)memcpy((memcached_string_st *)malloc(sizeof(memcached_string_st)),&amp;result,sizeof(memcached_string_st)), SWIGTYPE_p_memcached_string_st, SWIG_POINTER_OWN |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -9426,27 +9505,29 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_expiration_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_key_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
-  time_t arg2 ;
+  char *arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
+  char temp2[251] ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;expiration&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  {
-    if (NIL_P(argv[0]))
-    arg2 = (time_t)-1;
-    else
-    arg2 = NUM2LONG(rb_funcall(argv[0], rb_intern(&quot;tv_sec&quot;), 0));
+  res2 = SWIG_AsCharArray(argv[0], temp2, 251);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [251]&quot;,&quot;key&quot;, 2, argv[0] ));
   }
-  if (arg1) (arg1)-&gt;expiration = arg2;
+  arg2 = (char *)(temp2);
+  if (arg2) memcpy(arg1-&gt;key,arg2,251*sizeof(char));
+  else memset(arg1-&gt;key,0,251*sizeof(char));
   return Qnil;
 fail:
   return Qnil;
@@ -9454,11 +9535,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedResultSt_expiration_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedResultSt_key_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_result_st *arg1 = (struct memcached_result_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  time_t result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9466,12 +9547,16 @@ _wrap_MemcachedResultSt_expiration_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_result_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;expiration&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_result_st *&quot;,&quot;key&quot;, 1, self )); 
   }
   arg1 = (struct memcached_result_st *)(argp1);
-  result =  ((arg1)-&gt;expiration);
+  result = (char *)(char *) ((arg1)-&gt;key);
   {
-    vresult = rb_time_new(result, 0);
+    size_t size = 251;
+    
+    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
+    
+    vresult = SWIG_FromCharPtrAndSize(result, size);
   }
   return vresult;
 fail:
@@ -9737,29 +9822,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_hostname_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_sockaddr_inited_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  char *arg2 ;
+  bool arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char temp2[64] ;
-  int res2 ;
+  bool val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;hostname&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;sockaddr_inited&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  res2 = SWIG_AsCharArray(argv[0], temp2, 64);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [64]&quot;,&quot;hostname&quot;, 2, argv[0] ));
-  }
-  arg2 = (char *)(temp2);
-  if (arg2) memcpy(arg1-&gt;hostname,arg2,64*sizeof(char));
-  else memset(arg1-&gt;hostname,0,64*sizeof(char));
+  ecode2 = SWIG_AsVal_bool(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;bool&quot;,&quot;sockaddr_inited&quot;, 2, argv[0] ));
+  } 
+  arg2 = (bool)(val2);
+  if (arg1) (arg1)-&gt;sockaddr_inited = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9767,11 +9851,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_hostname_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_sockaddr_inited_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  bool result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9779,17 +9863,64 @@ _wrap_MemcachedServerSt_hostname_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;hostname&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;sockaddr_inited&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (char *)(char *) ((arg1)-&gt;hostname);
-  {
-    size_t size = 64;
-    
-    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
-    
-    vresult = SWIG_FromCharPtrAndSize(result, size);
+  result = (bool) ((arg1)-&gt;sockaddr_inited);
+  vresult = SWIG_From_bool((bool)(result));
+  return vresult;
+fail:
+  return Qnil;
+}
+
+
+SWIGINTERN VALUE
+_wrap_MemcachedServerSt_count_set(int argc, VALUE *argv, VALUE self) {
+  struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
+  uint16_t arg2 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  unsigned int val2 ;
+  int ecode2 = 0 ;
+  
+  if ((argc &lt; 1) || (argc &gt; 1)) {
+    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
+  }
+  res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;count&quot;, 1, self )); 
+  }
+  arg1 = (struct memcached_server_st *)(argp1);
+  ecode2 = SWIG_AsVal_unsigned_SS_int(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint16_t&quot;,&quot;count&quot;, 2, argv[0] ));
+  } 
+  arg2 = (uint16_t)(val2);
+  if (arg1) (arg1)-&gt;count = arg2;
+  return Qnil;
+fail:
+  return Qnil;
+}
+
+
+SWIGINTERN VALUE
+_wrap_MemcachedServerSt_count_get(int argc, VALUE *argv, VALUE self) {
+  struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
+  void *argp1 = 0 ;
+  int res1 = 0 ;
+  uint16_t result;
+  VALUE vresult = Qnil;
+  
+  if ((argc &lt; 0) || (argc &gt; 0)) {
+    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 0)&quot;,argc); SWIG_fail;
+  }
+  res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
+  if (!SWIG_IsOK(res1)) {
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;count&quot;, 1, self )); 
   }
+  arg1 = (struct memcached_server_st *)(argp1);
+  result =  ((arg1)-&gt;count);
+  vresult = SWIG_From_unsigned_SS_int((unsigned int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -9797,7 +9928,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_port_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_cursor_active_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   unsigned int arg2 ;
   void *argp1 = 0 ;
@@ -9810,15 +9941,15 @@ _wrap_MemcachedServerSt_port_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;port&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;cursor_active&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
   ecode2 = SWIG_AsVal_unsigned_SS_int(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;unsigned int&quot;,&quot;port&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;unsigned int&quot;,&quot;cursor_active&quot;, 2, argv[0] ));
   } 
   arg2 = (unsigned int)(val2);
-  if (arg1) (arg1)-&gt;port = arg2;
+  if (arg1) (arg1)-&gt;cursor_active = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9826,7 +9957,7 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_port_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_cursor_active_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
@@ -9838,10 +9969,10 @@ _wrap_MemcachedServerSt_port_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;port&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;cursor_active&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (unsigned int) ((arg1)-&gt;port);
+  result = (unsigned int) ((arg1)-&gt;cursor_active);
   vresult = SWIG_From_unsigned_SS_int((unsigned int)(result));
   return vresult;
 fail:
@@ -9850,12 +9981,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_fd_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_port_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  int arg2 ;
+  unsigned int arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
+  unsigned int val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -9863,15 +9994,15 @@ _wrap_MemcachedServerSt_fd_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;fd&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;port&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_int(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;fd&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;unsigned int&quot;,&quot;port&quot;, 2, argv[0] ));
   } 
-  arg2 = (int)(val2);
-  if (arg1) (arg1)-&gt;fd = arg2;
+  arg2 = (unsigned int)(val2);
+  if (arg1) (arg1)-&gt;port = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -9879,11 +10010,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_fd_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_port_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int result;
+  unsigned int result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -9891,11 +10022,11 @@ _wrap_MemcachedServerSt_fd_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;fd&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;port&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (int) ((arg1)-&gt;fd);
-  vresult = SWIG_From_int((int)(result));
+  result = (unsigned int) ((arg1)-&gt;port);
+  vresult = SWIG_From_unsigned_SS_int((unsigned int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10018,12 +10149,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_cursor_active_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_fd_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  unsigned int arg2 ;
+  int arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned int val2 ;
+  int val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10031,15 +10162,15 @@ _wrap_MemcachedServerSt_cursor_active_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;cursor_active&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;fd&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_int(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;unsigned int&quot;,&quot;cursor_active&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;int&quot;,&quot;fd&quot;, 2, argv[0] ));
   } 
-  arg2 = (unsigned int)(val2);
-  if (arg1) (arg1)-&gt;cursor_active = arg2;
+  arg2 = (int)(val2);
+  if (arg1) (arg1)-&gt;fd = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10047,11 +10178,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_cursor_active_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_fd_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned int result;
+  int result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10059,11 +10190,11 @@ _wrap_MemcachedServerSt_cursor_active_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;cursor_active&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;fd&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (unsigned int) ((arg1)-&gt;cursor_active);
-  vresult = SWIG_From_unsigned_SS_int((unsigned int)(result));
+  result = (int) ((arg1)-&gt;fd);
+  vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10071,29 +10202,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_write_buffer_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_io_bytes_sent_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  char *arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char temp2[8196] ;
-  int res2 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;io_bytes_sent&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  res2 = SWIG_AsCharArray(argv[0], temp2, 8196);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [8196]&quot;,&quot;write_buffer&quot;, 2, argv[0] ));
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_bytes_sent&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_bytes_sent&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((uint32_t *)(argp2));
+    }
   }
-  arg2 = (char *)(temp2);
-  if (arg2) memcpy(arg1-&gt;write_buffer,arg2,8196*sizeof(char));
-  else memset(arg1-&gt;write_buffer,0,8196*sizeof(char));
+  if (arg1) (arg1)-&gt;io_bytes_sent = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10101,11 +10237,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_write_buffer_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_io_bytes_sent_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10113,70 +10249,13 @@ _wrap_MemcachedServerSt_write_buffer_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;io_bytes_sent&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (char *)(char *) ((arg1)-&gt;write_buffer);
+  result =  ((arg1)-&gt;io_bytes_sent);
   {
-    size_t size = 8196;
-    
-    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
-    
-    vresult = SWIG_FromCharPtrAndSize(result, size);
-  }
-  return vresult;
-fail:
-  return Qnil;
-}
-
-
-SWIGINTERN VALUE
-_wrap_MemcachedServerSt_write_buffer_offset_set(int argc, VALUE *argv, VALUE self) {
-  struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  size_t arg2 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  size_t val2 ;
-  int ecode2 = 0 ;
-  
-  if ((argc &lt; 1) || (argc &gt; 1)) {
-    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
-  }
-  res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer_offset&quot;, 1, self )); 
-  }
-  arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;write_buffer_offset&quot;, 2, argv[0] ));
-  } 
-  arg2 = (size_t)(val2);
-  if (arg1) (arg1)-&gt;write_buffer_offset = arg2;
-  return Qnil;
-fail:
-  return Qnil;
-}
-
-
-SWIGINTERN VALUE
-_wrap_MemcachedServerSt_write_buffer_offset_get(int argc, VALUE *argv, VALUE self) {
-  struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  void *argp1 = 0 ;
-  int res1 = 0 ;
-  size_t result;
-  VALUE vresult = Qnil;
-  
-  if ((argc &lt; 0) || (argc &gt; 0)) {
-    rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 0)&quot;,argc); SWIG_fail;
-  }
-  res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
-  if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer_offset&quot;, 1, self )); 
+    vresult = UINT2NUM(result);
   }
-  arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;write_buffer_offset);
-  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10184,29 +10263,34 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_buffer_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_server_failure_counter_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  char *arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char temp2[8196] ;
-  int res2 ;
+  void *argp2 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;server_failure_counter&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  res2 = SWIG_AsCharArray(argv[0], temp2, 8196);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [8196]&quot;,&quot;read_buffer&quot;, 2, argv[0] ));
+  {
+    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
+    if (!SWIG_IsOK(res2)) {
+      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;server_failure_counter&quot;, 2, argv[0] )); 
+    }  
+    if (!argp2) {
+      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;server_failure_counter&quot;, 2, argv[0]));
+    } else {
+      arg2 = *((uint32_t *)(argp2));
+    }
   }
-  arg2 = (char *)(temp2);
-  if (arg2) memcpy(arg1-&gt;read_buffer,arg2,8196*sizeof(char));
-  else memset(arg1-&gt;read_buffer,0,8196*sizeof(char));
+  if (arg1) (arg1)-&gt;server_failure_counter = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10214,11 +10298,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_buffer_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_server_failure_counter_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10226,16 +10310,12 @@ _wrap_MemcachedServerSt_read_buffer_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;server_failure_counter&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (char *)(char *) ((arg1)-&gt;read_buffer);
+  result =  ((arg1)-&gt;server_failure_counter);
   {
-    size_t size = 8196;
-    
-    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
-    
-    vresult = SWIG_FromCharPtrAndSize(result, size);
+    vresult = UINT2NUM(result);
   }
   return vresult;
 fail:
@@ -10244,12 +10324,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_data_length_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_weight_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  size_t arg2 ;
+  uint32_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t val2 ;
+  unsigned long val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10257,15 +10337,15 @@ _wrap_MemcachedServerSt_read_data_length_set(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_data_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;weight&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;read_data_length&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;weight&quot;, 2, argv[0] ));
   } 
-  arg2 = (size_t)(val2);
-  if (arg1) (arg1)-&gt;read_data_length = arg2;
+  arg2 = (uint32_t)(val2);
+  if (arg1) (arg1)-&gt;weight = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10273,11 +10353,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_data_length_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_weight_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t result;
+  uint32_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10285,11 +10365,11 @@ _wrap_MemcachedServerSt_read_data_length_get(int argc, VALUE *argv, VALUE self)
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_data_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;weight&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;read_data_length);
-  vresult = SWIG_From_size_t((size_t)(result));
+  result =  ((arg1)-&gt;weight);
+  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10297,12 +10377,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_buffer_length_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_major_version_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  size_t arg2 ;
+  uint8_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t val2 ;
+  unsigned short val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10310,15 +10390,15 @@ _wrap_MemcachedServerSt_read_buffer_length_set(int argc, VALUE *argv, VALUE self
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;major_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;read_buffer_length&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;major_version&quot;, 2, argv[0] ));
   } 
-  arg2 = (size_t)(val2);
-  if (arg1) (arg1)-&gt;read_buffer_length = arg2;
+  arg2 = (uint8_t)(val2);
+  if (arg1) (arg1)-&gt;major_version = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10326,11 +10406,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_buffer_length_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_major_version_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  size_t result;
+  uint8_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10338,11 +10418,11 @@ _wrap_MemcachedServerSt_read_buffer_length_get(int argc, VALUE *argv, VALUE self
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer_length&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;major_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;read_buffer_length);
-  vresult = SWIG_From_size_t((size_t)(result));
+  result =  ((arg1)-&gt;major_version);
+  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10350,49 +10430,40 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_ptr_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_micro_version_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  char *arg2 = (char *) 0 ;
+  uint8_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int res2 ;
-  char *buf2 = 0 ;
-  int alloc2 = 0 ;
+  unsigned short val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_ptr&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;micro_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  res2 = SWIG_AsCharPtrAndSize(argv[0], &amp;buf2, NULL, &amp;alloc2);
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char *&quot;,&quot;read_ptr&quot;, 2, argv[0] ));
-  }
-  arg2 = (char *)(buf2);
-  if (arg1-&gt;read_ptr) free((char*)arg1-&gt;read_ptr);
-  if (arg2) {
-    size_t size = strlen((const char *)(arg2)) + 1;
-    arg1-&gt;read_ptr = (char *)(char *)memcpy((char *)malloc((size)*sizeof(char)), (const char *)(arg2), sizeof(char)*(size));
-  } else {
-    arg1-&gt;read_ptr = 0;
-  }
-  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
+  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;micro_version&quot;, 2, argv[0] ));
+  } 
+  arg2 = (uint8_t)(val2);
+  if (arg1) (arg1)-&gt;micro_version = arg2;
   return Qnil;
 fail:
-  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
   return Qnil;
 }
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_read_ptr_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_micro_version_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  char *result = 0 ;
+  uint8_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10400,11 +10471,11 @@ _wrap_MemcachedServerSt_read_ptr_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_ptr&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;micro_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (char *) ((arg1)-&gt;read_ptr);
-  vresult = SWIG_FromCharPtr((const char *)result);
+  result =  ((arg1)-&gt;micro_version);
+  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10412,12 +10483,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_sockaddr_inited_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_minor_version_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  bool arg2 ;
+  uint8_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  bool val2 ;
+  unsigned short val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10425,15 +10496,15 @@ _wrap_MemcachedServerSt_sockaddr_inited_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;sockaddr_inited&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;minor_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_bool(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;bool&quot;,&quot;sockaddr_inited&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;minor_version&quot;, 2, argv[0] ));
   } 
-  arg2 = (bool)(val2);
-  if (arg1) (arg1)-&gt;sockaddr_inited = arg2;
+  arg2 = (uint8_t)(val2);
+  if (arg1) (arg1)-&gt;minor_version = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10441,11 +10512,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_sockaddr_inited_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_minor_version_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  bool result;
+  uint8_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10453,11 +10524,11 @@ _wrap_MemcachedServerSt_sockaddr_inited_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;sockaddr_inited&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;minor_version&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (bool) ((arg1)-&gt;sockaddr_inited);
-  vresult = SWIG_From_bool((bool)(result));
+  result =  ((arg1)-&gt;minor_version);
+  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10465,28 +10536,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_address_info_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_type_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  struct addrinfo *arg2 = (struct addrinfo *) 0 ;
+  memcached_connection arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 = 0 ;
-  int res2 = 0 ;
+  int val2 ;
+  int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;address_info&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;type&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_addrinfo, SWIG_POINTER_DISOWN |  0 );
-  if (!SWIG_IsOK(res2)) {
-    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;struct addrinfo *&quot;,&quot;address_info&quot;, 2, argv[0] )); 
-  }
-  arg2 = (struct addrinfo *)(argp2);
-  if (arg1) (arg1)-&gt;address_info = arg2;
+  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
+  if (!SWIG_IsOK(ecode2)) {
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_connection&quot;,&quot;type&quot;, 2, argv[0] ));
+  } 
+  arg2 = (memcached_connection)(val2);
+  if (arg1) (arg1)-&gt;type = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10494,11 +10565,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_address_info_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_type_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  struct addrinfo *result = 0 ;
+  memcached_connection result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10506,11 +10577,11 @@ _wrap_MemcachedServerSt_address_info_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;address_info&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;type&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (struct addrinfo *) ((arg1)-&gt;address_info);
-  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_addrinfo, 0 |  0 );
+  result = (memcached_connection) ((arg1)-&gt;type);
+  vresult = SWIG_From_int((int)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10518,40 +10589,49 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_type_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_ptr_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  memcached_connection arg2 ;
+  char *arg2 = (char *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  int val2 ;
-  int ecode2 = 0 ;
+  int res2 ;
+  char *buf2 = 0 ;
+  int alloc2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;type&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_ptr&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;memcached_connection&quot;,&quot;type&quot;, 2, argv[0] ));
-  } 
-  arg2 = (memcached_connection)(val2);
-  if (arg1) (arg1)-&gt;type = arg2;
+  res2 = SWIG_AsCharPtrAndSize(argv[0], &amp;buf2, NULL, &amp;alloc2);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char *&quot;,&quot;read_ptr&quot;, 2, argv[0] ));
+  }
+  arg2 = (char *)(buf2);
+  if (arg1-&gt;read_ptr) free((char*)arg1-&gt;read_ptr);
+  if (arg2) {
+    size_t size = strlen((const char *)(arg2)) + 1;
+    arg1-&gt;read_ptr = (char *)(char *)memcpy((char *)malloc((size)*sizeof(char)), (const char *)(arg2), sizeof(char)*(size));
+  } else {
+    arg1-&gt;read_ptr = 0;
+  }
+  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
   return Qnil;
 fail:
+  if (alloc2 == SWIG_NEWOBJ) free((char*)buf2);
   return Qnil;
 }
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_type_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_ptr_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  memcached_connection result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10559,11 +10639,11 @@ _wrap_MemcachedServerSt_type_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;type&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_ptr&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result = (memcached_connection) ((arg1)-&gt;type);
-  vresult = SWIG_From_int((int)(result));
+  result = (char *) ((arg1)-&gt;read_ptr);
+  vresult = SWIG_FromCharPtr((const char *)result);
   return vresult;
 fail:
   return Qnil;
@@ -10571,12 +10651,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_major_version_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_buffer_length_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint8_t arg2 ;
+  size_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned short val2 ;
+  size_t val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10584,15 +10664,15 @@ _wrap_MemcachedServerSt_major_version_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;major_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;major_version&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;read_buffer_length&quot;, 2, argv[0] ));
   } 
-  arg2 = (uint8_t)(val2);
-  if (arg1) (arg1)-&gt;major_version = arg2;
+  arg2 = (size_t)(val2);
+  if (arg1) (arg1)-&gt;read_buffer_length = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10600,11 +10680,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_major_version_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_buffer_length_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint8_t result;
+  size_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10612,11 +10692,11 @@ _wrap_MemcachedServerSt_major_version_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;major_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;major_version);
-  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
+  result =  ((arg1)-&gt;read_buffer_length);
+  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10624,12 +10704,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_minor_version_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_data_length_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint8_t arg2 ;
+  size_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned short val2 ;
+  size_t val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10637,15 +10717,15 @@ _wrap_MemcachedServerSt_minor_version_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;minor_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_data_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;minor_version&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;read_data_length&quot;, 2, argv[0] ));
   } 
-  arg2 = (uint8_t)(val2);
-  if (arg1) (arg1)-&gt;minor_version = arg2;
+  arg2 = (size_t)(val2);
+  if (arg1) (arg1)-&gt;read_data_length = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10653,11 +10733,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_minor_version_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_data_length_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint8_t result;
+  size_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10665,11 +10745,11 @@ _wrap_MemcachedServerSt_minor_version_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;minor_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_data_length&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;minor_version);
-  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
+  result =  ((arg1)-&gt;read_data_length);
+  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10677,12 +10757,12 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_micro_version_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_write_buffer_offset_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint8_t arg2 ;
+  size_t arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned short val2 ;
+  size_t val2 ;
   int ecode2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
@@ -10690,15 +10770,15 @@ _wrap_MemcachedServerSt_micro_version_set(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;micro_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer_offset&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_short(argv[0], &amp;val2);
+  ecode2 = SWIG_AsVal_size_t(argv[0], &amp;val2);
   if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint8_t&quot;,&quot;micro_version&quot;, 2, argv[0] ));
+    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;size_t&quot;,&quot;write_buffer_offset&quot;, 2, argv[0] ));
   } 
-  arg2 = (uint8_t)(val2);
-  if (arg1) (arg1)-&gt;micro_version = arg2;
+  arg2 = (size_t)(val2);
+  if (arg1) (arg1)-&gt;write_buffer_offset = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10706,11 +10786,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_micro_version_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_write_buffer_offset_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint8_t result;
+  size_t result;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10718,11 +10798,11 @@ _wrap_MemcachedServerSt_micro_version_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;micro_version&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer_offset&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;micro_version);
-  vresult = SWIG_From_unsigned_SS_short((unsigned short)(result));
+  result =  ((arg1)-&gt;write_buffer_offset);
+  vresult = SWIG_From_size_t((size_t)(result));
   return vresult;
 fail:
   return Qnil;
@@ -10730,28 +10810,28 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_count_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_address_info_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint16_t arg2 ;
+  struct addrinfo *arg2 = (struct addrinfo *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned int val2 ;
-  int ecode2 = 0 ;
+  void *argp2 = 0 ;
+  int res2 = 0 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;count&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;address_info&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_int(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint16_t&quot;,&quot;count&quot;, 2, argv[0] ));
-  } 
-  arg2 = (uint16_t)(val2);
-  if (arg1) (arg1)-&gt;count = arg2;
+  res2 = SWIG_ConvertPtr(argv[0], &amp;argp2,SWIGTYPE_p_addrinfo, SWIG_POINTER_DISOWN |  0 );
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;struct addrinfo *&quot;,&quot;address_info&quot;, 2, argv[0] )); 
+  }
+  arg2 = (struct addrinfo *)(argp2);
+  if (arg1) (arg1)-&gt;address_info = arg2;
   return Qnil;
 fail:
   return Qnil;
@@ -10759,11 +10839,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_count_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_address_info_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint16_t result;
+  struct addrinfo *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10771,11 +10851,11 @@ _wrap_MemcachedServerSt_count_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;count&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;address_info&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;count);
-  vresult = SWIG_From_unsigned_SS_int((unsigned int)(result));
+  result = (struct addrinfo *) ((arg1)-&gt;address_info);
+  vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_addrinfo, 0 |  0 );
   return vresult;
 fail:
   return Qnil;
@@ -10951,34 +11031,29 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_server_failure_counter_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_buffer_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint32_t arg2 ;
+  char *arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  char temp2[8196] ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;server_failure_counter&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;server_failure_counter&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;server_failure_counter&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((uint32_t *)(argp2));
-    }
+  res2 = SWIG_AsCharArray(argv[0], temp2, 8196);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [8196]&quot;,&quot;read_buffer&quot;, 2, argv[0] ));
   }
-  if (arg1) (arg1)-&gt;server_failure_counter = arg2;
+  arg2 = (char *)(temp2);
+  if (arg2) memcpy(arg1-&gt;read_buffer,arg2,8196*sizeof(char));
+  else memset(arg1-&gt;read_buffer,0,8196*sizeof(char));
   return Qnil;
 fail:
   return Qnil;
@@ -10986,11 +11061,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_server_failure_counter_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_read_buffer_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -10998,12 +11073,16 @@ _wrap_MemcachedServerSt_server_failure_counter_get(int argc, VALUE *argv, VALUE
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;server_failure_counter&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;read_buffer&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;server_failure_counter);
+  result = (char *)(char *) ((arg1)-&gt;read_buffer);
   {
-    vresult = UINT2NUM(result);
+    size_t size = 8196;
+    
+    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
+    
+    vresult = SWIG_FromCharPtrAndSize(result, size);
   }
   return vresult;
 fail:
@@ -11012,34 +11091,29 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_io_bytes_sent_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_write_buffer_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint32_t arg2 ;
+  char *arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  void *argp2 ;
-  int res2 = 0 ;
+  char temp2[8196] ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;io_bytes_sent&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  {
-    res2 = SWIG_ConvertPtr(argv[0], &amp;argp2, SWIGTYPE_p_uint32_t,  0 );
-    if (!SWIG_IsOK(res2)) {
-      SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;io_bytes_sent&quot;, 2, argv[0] )); 
-    }  
-    if (!argp2) {
-      SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError(&quot;invalid null reference &quot;, &quot;uint32_t&quot;,&quot;io_bytes_sent&quot;, 2, argv[0]));
-    } else {
-      arg2 = *((uint32_t *)(argp2));
-    }
+  res2 = SWIG_AsCharArray(argv[0], temp2, 8196);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [8196]&quot;,&quot;write_buffer&quot;, 2, argv[0] ));
   }
-  if (arg1) (arg1)-&gt;io_bytes_sent = arg2;
+  arg2 = (char *)(temp2);
+  if (arg2) memcpy(arg1-&gt;write_buffer,arg2,8196*sizeof(char));
+  else memset(arg1-&gt;write_buffer,0,8196*sizeof(char));
   return Qnil;
 fail:
   return Qnil;
@@ -11047,11 +11121,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_io_bytes_sent_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_write_buffer_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -11059,12 +11133,16 @@ _wrap_MemcachedServerSt_io_bytes_sent_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;io_bytes_sent&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;write_buffer&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;io_bytes_sent);
+  result = (char *)(char *) ((arg1)-&gt;write_buffer);
   {
-    vresult = UINT2NUM(result);
+    size_t size = 8196;
+    
+    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
+    
+    vresult = SWIG_FromCharPtrAndSize(result, size);
   }
   return vresult;
 fail:
@@ -11073,28 +11151,29 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_weight_set(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_hostname_set(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
-  uint32_t arg2 ;
+  char *arg2 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  unsigned long val2 ;
-  int ecode2 = 0 ;
+  char temp2[64] ;
+  int res2 ;
   
   if ((argc &lt; 1) || (argc &gt; 1)) {
     rb_raise(rb_eArgError, &quot;wrong # of arguments(%d for 1)&quot;,argc); SWIG_fail;
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;weight&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;hostname&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  ecode2 = SWIG_AsVal_unsigned_SS_long(argv[0], &amp;val2);
-  if (!SWIG_IsOK(ecode2)) {
-    SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( &quot;&quot;, &quot;uint32_t&quot;,&quot;weight&quot;, 2, argv[0] ));
-  } 
-  arg2 = (uint32_t)(val2);
-  if (arg1) (arg1)-&gt;weight = arg2;
+  res2 = SWIG_AsCharArray(argv[0], temp2, 64);
+  if (!SWIG_IsOK(res2)) {
+    SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( &quot;&quot;, &quot;char [64]&quot;,&quot;hostname&quot;, 2, argv[0] ));
+  }
+  arg2 = (char *)(temp2);
+  if (arg2) memcpy(arg1-&gt;hostname,arg2,64*sizeof(char));
+  else memset(arg1-&gt;hostname,0,64*sizeof(char));
   return Qnil;
 fail:
   return Qnil;
@@ -11102,11 +11181,11 @@ fail:
 
 
 SWIGINTERN VALUE
-_wrap_MemcachedServerSt_weight_get(int argc, VALUE *argv, VALUE self) {
+_wrap_MemcachedServerSt_hostname_get(int argc, VALUE *argv, VALUE self) {
   struct memcached_server_st *arg1 = (struct memcached_server_st *) 0 ;
   void *argp1 = 0 ;
   int res1 = 0 ;
-  uint32_t result;
+  char *result = 0 ;
   VALUE vresult = Qnil;
   
   if ((argc &lt; 0) || (argc &gt; 0)) {
@@ -11114,11 +11193,17 @@ _wrap_MemcachedServerSt_weight_get(int argc, VALUE *argv, VALUE self) {
   }
   res1 = SWIG_ConvertPtr(self, &amp;argp1,SWIGTYPE_p_memcached_server_st, 0 |  0 );
   if (!SWIG_IsOK(res1)) {
-    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;weight&quot;, 1, self )); 
+    SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( &quot;&quot;, &quot;struct memcached_server_st *&quot;,&quot;hostname&quot;, 1, self )); 
   }
   arg1 = (struct memcached_server_st *)(argp1);
-  result =  ((arg1)-&gt;weight);
-  vresult = SWIG_From_unsigned_SS_long((unsigned long)(result));
+  result = (char *)(char *) ((arg1)-&gt;hostname);
+  {
+    size_t size = 64;
+    
+    while (size &amp;&amp; (result[size - 1] == '\0')) --size;
+    
+    vresult = SWIG_FromCharPtrAndSize(result, size);
+  }
   return vresult;
 fail:
   return Qnil;
@@ -11716,6 +11801,7 @@ static swig_type_info _swigt__p_memcached_cleanup_func = {&quot;_p_memcached_cleanup_
 static swig_type_info _swigt__p_memcached_clone_func = {&quot;_p_memcached_clone_func&quot;, &quot;memcached_clone_func *&quot;, 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_memcached_connection = {&quot;_p_memcached_connection&quot;, &quot;enum memcached_connection *|memcached_connection *&quot;, 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_memcached_continuum_item_st = {&quot;_p_memcached_continuum_item_st&quot;, &quot;memcached_continuum_item_st *|struct memcached_continuum_item_st *&quot;, 0, 0, (void*)0, 0};
+static swig_type_info _swigt__p_memcached_dump_func = {&quot;_p_memcached_dump_func&quot;, &quot;memcached_dump_func *&quot;, 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_memcached_execute_function = {&quot;_p_memcached_execute_function&quot;, &quot;memcached_execute_function *&quot;, 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_memcached_free_function = {&quot;_p_memcached_free_function&quot;, &quot;memcached_free_function *&quot;, 0, 0, (void*)0, 0};
 static swig_type_info _swigt__p_memcached_hash = {&quot;_p_memcached_hash&quot;, &quot;enum memcached_hash *|memcached_hash *&quot;, 0, 0, (void*)0, 0};
@@ -11749,6 +11835,7 @@ static swig_type_info *swig_type_initial[] = {
   &amp;_swigt__p_memcached_clone_func,
   &amp;_swigt__p_memcached_connection,
   &amp;_swigt__p_memcached_continuum_item_st,
+  &amp;_swigt__p_memcached_dump_func,
   &amp;_swigt__p_memcached_execute_function,
   &amp;_swigt__p_memcached_free_function,
   &amp;_swigt__p_memcached_hash,
@@ -11782,6 +11869,7 @@ static swig_cast_info _swigc__p_memcached_cleanup_func[] = {  {&amp;_swigt__p_memcac
 static swig_cast_info _swigc__p_memcached_clone_func[] = {  {&amp;_swigt__p_memcached_clone_func, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_memcached_connection[] = {  {&amp;_swigt__p_memcached_connection, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_memcached_continuum_item_st[] = {  {&amp;_swigt__p_memcached_continuum_item_st, 0, 0, 0},{0, 0, 0, 0}};
+static swig_cast_info _swigc__p_memcached_dump_func[] = {  {&amp;_swigt__p_memcached_dump_func, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_memcached_execute_function[] = {  {&amp;_swigt__p_memcached_execute_function, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_memcached_free_function[] = {  {&amp;_swigt__p_memcached_free_function, 0, 0, 0},{0, 0, 0, 0}};
 static swig_cast_info _swigc__p_memcached_hash[] = {  {&amp;_swigt__p_memcached_hash, 0, 0, 0},{0, 0, 0, 0}};
@@ -11815,6 +11903,7 @@ static swig_cast_info *swig_cast_initial[] = {
   _swigc__p_memcached_clone_func,
   _swigc__p_memcached_connection,
   _swigc__p_memcached_continuum_item_st,
+  _swigc__p_memcached_dump_func,
   _swigc__p_memcached_execute_function,
   _swigc__p_memcached_free_function,
   _swigc__p_memcached_hash,
@@ -12109,16 +12198,12 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   cMemcachedContinuumItemSt.mark = 0;
   cMemcachedContinuumItemSt.destroy = (void (*)(void *)) free_memcached_continuum_item_st;
   cMemcachedContinuumItemSt.trackObjects = 0;
-  rb_define_const(mRlibmemcached, &quot;LIBMEMCACHED_VERSION_STRING&quot;, SWIG_FromCharPtr(&quot;0.28&quot;));
+  rb_define_const(mRlibmemcached, &quot;LIBMEMCACHED_VERSION_STRING&quot;, SWIG_FromCharPtr(&quot;0.29&quot;));
   
   cMemcachedAnalysisSt.klass = rb_define_class_under(mRlibmemcached, &quot;MemcachedAnalysisSt&quot;, rb_cObject);
   SWIG_TypeClientData(SWIGTYPE_p_memcached_analysis_st, (void *) &amp;cMemcachedAnalysisSt);
   rb_define_alloc_func(cMemcachedAnalysisSt.klass, _wrap_MemcachedAnalysisSt_allocate);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;initialize&quot;, _wrap_new_MemcachedAnalysisSt, -1);
-  rb_define_method(cMemcachedAnalysisSt.klass, &quot;most_used_bytes=&quot;, _wrap_MemcachedAnalysisSt_most_used_bytes_set, -1);
-  rb_define_method(cMemcachedAnalysisSt.klass, &quot;most_used_bytes&quot;, _wrap_MemcachedAnalysisSt_most_used_bytes_get, -1);
-  rb_define_method(cMemcachedAnalysisSt.klass, &quot;least_remaining_bytes=&quot;, _wrap_MemcachedAnalysisSt_least_remaining_bytes_set, -1);
-  rb_define_method(cMemcachedAnalysisSt.klass, &quot;least_remaining_bytes&quot;, _wrap_MemcachedAnalysisSt_least_remaining_bytes_get, -1);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;average_item_size=&quot;, _wrap_MemcachedAnalysisSt_average_item_size_set, -1);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;average_item_size&quot;, _wrap_MemcachedAnalysisSt_average_item_size_get, -1);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;longest_uptime=&quot;, _wrap_MemcachedAnalysisSt_longest_uptime_set, -1);
@@ -12131,6 +12216,10 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;oldest_server&quot;, _wrap_MemcachedAnalysisSt_oldest_server_get, -1);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;pool_hit_ratio=&quot;, _wrap_MemcachedAnalysisSt_pool_hit_ratio_set, -1);
   rb_define_method(cMemcachedAnalysisSt.klass, &quot;pool_hit_ratio&quot;, _wrap_MemcachedAnalysisSt_pool_hit_ratio_get, -1);
+  rb_define_method(cMemcachedAnalysisSt.klass, &quot;most_used_bytes=&quot;, _wrap_MemcachedAnalysisSt_most_used_bytes_set, -1);
+  rb_define_method(cMemcachedAnalysisSt.klass, &quot;most_used_bytes&quot;, _wrap_MemcachedAnalysisSt_most_used_bytes_get, -1);
+  rb_define_method(cMemcachedAnalysisSt.klass, &quot;least_remaining_bytes=&quot;, _wrap_MemcachedAnalysisSt_least_remaining_bytes_set, -1);
+  rb_define_method(cMemcachedAnalysisSt.klass, &quot;least_remaining_bytes&quot;, _wrap_MemcachedAnalysisSt_least_remaining_bytes_get, -1);
   cMemcachedAnalysisSt.mark = 0;
   cMemcachedAnalysisSt.destroy = (void (*)(void *)) free_memcached_analysis_st;
   cMemcachedAnalysisSt.trackObjects = 0;
@@ -12139,52 +12228,52 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   SWIG_TypeClientData(SWIGTYPE_p_memcached_stat_st, (void *) &amp;cMemcachedStatSt);
   rb_define_alloc_func(cMemcachedStatSt.klass, _wrap_MemcachedStatSt_allocate);
   rb_define_method(cMemcachedStatSt.klass, &quot;initialize&quot;, _wrap_new_MemcachedStatSt, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;connection_structures=&quot;, _wrap_MemcachedStatSt_connection_structures_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;connection_structures&quot;, _wrap_MemcachedStatSt_connection_structures_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;curr_connections=&quot;, _wrap_MemcachedStatSt_curr_connections_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;curr_connections&quot;, _wrap_MemcachedStatSt_curr_connections_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;curr_items=&quot;, _wrap_MemcachedStatSt_curr_items_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;curr_items&quot;, _wrap_MemcachedStatSt_curr_items_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;pid=&quot;, _wrap_MemcachedStatSt_pid_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;pid&quot;, _wrap_MemcachedStatSt_pid_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;uptime=&quot;, _wrap_MemcachedStatSt_uptime_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;uptime&quot;, _wrap_MemcachedStatSt_uptime_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;threads=&quot;, _wrap_MemcachedStatSt_threads_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;threads&quot;, _wrap_MemcachedStatSt_threads_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;time=&quot;, _wrap_MemcachedStatSt_time_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;time&quot;, _wrap_MemcachedStatSt_time_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;pointer_size=&quot;, _wrap_MemcachedStatSt_pointer_size_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;pointer_size&quot;, _wrap_MemcachedStatSt_pointer_size_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_seconds=&quot;, _wrap_MemcachedStatSt_rusage_user_seconds_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_seconds&quot;, _wrap_MemcachedStatSt_rusage_user_seconds_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_microseconds=&quot;, _wrap_MemcachedStatSt_rusage_user_microseconds_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_microseconds&quot;, _wrap_MemcachedStatSt_rusage_user_microseconds_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_seconds=&quot;, _wrap_MemcachedStatSt_rusage_system_seconds_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_seconds&quot;, _wrap_MemcachedStatSt_rusage_system_seconds_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_microseconds=&quot;, _wrap_MemcachedStatSt_rusage_system_microseconds_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_microseconds&quot;, _wrap_MemcachedStatSt_rusage_system_microseconds_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;curr_items=&quot;, _wrap_MemcachedStatSt_curr_items_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;curr_items&quot;, _wrap_MemcachedStatSt_curr_items_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;total_items=&quot;, _wrap_MemcachedStatSt_total_items_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;total_items&quot;, _wrap_MemcachedStatSt_total_items_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;limit_maxbytes=&quot;, _wrap_MemcachedStatSt_limit_maxbytes_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;limit_maxbytes&quot;, _wrap_MemcachedStatSt_limit_maxbytes_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;curr_connections=&quot;, _wrap_MemcachedStatSt_curr_connections_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;curr_connections&quot;, _wrap_MemcachedStatSt_curr_connections_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_seconds=&quot;, _wrap_MemcachedStatSt_rusage_system_seconds_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_system_seconds&quot;, _wrap_MemcachedStatSt_rusage_system_seconds_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_microseconds=&quot;, _wrap_MemcachedStatSt_rusage_user_microseconds_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_microseconds&quot;, _wrap_MemcachedStatSt_rusage_user_microseconds_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_seconds=&quot;, _wrap_MemcachedStatSt_rusage_user_seconds_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;rusage_user_seconds&quot;, _wrap_MemcachedStatSt_rusage_user_seconds_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;threads=&quot;, _wrap_MemcachedStatSt_threads_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;threads&quot;, _wrap_MemcachedStatSt_threads_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;time=&quot;, _wrap_MemcachedStatSt_time_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;time&quot;, _wrap_MemcachedStatSt_time_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;total_connections=&quot;, _wrap_MemcachedStatSt_total_connections_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;total_connections&quot;, _wrap_MemcachedStatSt_total_connections_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;connection_structures=&quot;, _wrap_MemcachedStatSt_connection_structures_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;connection_structures&quot;, _wrap_MemcachedStatSt_connection_structures_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;total_items=&quot;, _wrap_MemcachedStatSt_total_items_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;total_items&quot;, _wrap_MemcachedStatSt_total_items_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;uptime=&quot;, _wrap_MemcachedStatSt_uptime_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;uptime&quot;, _wrap_MemcachedStatSt_uptime_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;bytes=&quot;, _wrap_MemcachedStatSt_bytes_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;bytes&quot;, _wrap_MemcachedStatSt_bytes_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_read=&quot;, _wrap_MemcachedStatSt_bytes_read_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_read&quot;, _wrap_MemcachedStatSt_bytes_read_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_written=&quot;, _wrap_MemcachedStatSt_bytes_written_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_written&quot;, _wrap_MemcachedStatSt_bytes_written_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;cmd_get=&quot;, _wrap_MemcachedStatSt_cmd_get_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;cmd_get&quot;, _wrap_MemcachedStatSt_cmd_get_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;cmd_set=&quot;, _wrap_MemcachedStatSt_cmd_set_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;cmd_set&quot;, _wrap_MemcachedStatSt_cmd_set_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;evictions=&quot;, _wrap_MemcachedStatSt_evictions_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;evictions&quot;, _wrap_MemcachedStatSt_evictions_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;get_hits=&quot;, _wrap_MemcachedStatSt_get_hits_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;get_hits&quot;, _wrap_MemcachedStatSt_get_hits_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;get_misses=&quot;, _wrap_MemcachedStatSt_get_misses_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;get_misses&quot;, _wrap_MemcachedStatSt_get_misses_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;evictions=&quot;, _wrap_MemcachedStatSt_evictions_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;evictions&quot;, _wrap_MemcachedStatSt_evictions_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_read=&quot;, _wrap_MemcachedStatSt_bytes_read_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_read&quot;, _wrap_MemcachedStatSt_bytes_read_get, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_written=&quot;, _wrap_MemcachedStatSt_bytes_written_set, -1);
-  rb_define_method(cMemcachedStatSt.klass, &quot;bytes_written&quot;, _wrap_MemcachedStatSt_bytes_written_get, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;limit_maxbytes=&quot;, _wrap_MemcachedStatSt_limit_maxbytes_set, -1);
+  rb_define_method(cMemcachedStatSt.klass, &quot;limit_maxbytes&quot;, _wrap_MemcachedStatSt_limit_maxbytes_get, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;version=&quot;, _wrap_MemcachedStatSt_version_set, -1);
   rb_define_method(cMemcachedStatSt.klass, &quot;version&quot;, _wrap_MemcachedStatSt_version_get, -1);
   cMemcachedStatSt.mark = 0;
@@ -12199,8 +12288,26 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_method(cMemcachedSt.klass, &quot;purging&quot;, _wrap_MemcachedSt_purging_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;is_allocated=&quot;, _wrap_MemcachedSt_is_allocated_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;is_allocated&quot;, _wrap_MemcachedSt_is_allocated_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;distribution=&quot;, _wrap_MemcachedSt_distribution_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;distribution&quot;, _wrap_MemcachedSt_distribution_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;hash=&quot;, _wrap_MemcachedSt_hash_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;hash&quot;, _wrap_MemcachedSt_hash_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;continuum_points_counter=&quot;, _wrap_MemcachedSt_continuum_points_counter_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;continuum_points_counter&quot;, _wrap_MemcachedSt_continuum_points_counter_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;hosts=&quot;, _wrap_MemcachedSt_hosts_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;hosts&quot;, _wrap_MemcachedSt_hosts_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;snd_timeout=&quot;, _wrap_MemcachedSt_snd_timeout_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;snd_timeout&quot;, _wrap_MemcachedSt_snd_timeout_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;rcv_timeout=&quot;, _wrap_MemcachedSt_rcv_timeout_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;rcv_timeout&quot;, _wrap_MemcachedSt_rcv_timeout_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;server_failure_limit=&quot;, _wrap_MemcachedSt_server_failure_limit_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;server_failure_limit&quot;, _wrap_MemcachedSt_server_failure_limit_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_msg_watermark=&quot;, _wrap_MemcachedSt_io_msg_watermark_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_msg_watermark&quot;, _wrap_MemcachedSt_io_msg_watermark_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_bytes_watermark=&quot;, _wrap_MemcachedSt_io_bytes_watermark_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_bytes_watermark&quot;, _wrap_MemcachedSt_io_bytes_watermark_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_key_prefetch=&quot;, _wrap_MemcachedSt_io_key_prefetch_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;io_key_prefetch&quot;, _wrap_MemcachedSt_io_key_prefetch_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;number_of_hosts=&quot;, _wrap_MemcachedSt_number_of_hosts_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;number_of_hosts&quot;, _wrap_MemcachedSt_number_of_hosts_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;cursor_server=&quot;, _wrap_MemcachedSt_cursor_server_set, -1);
@@ -12209,26 +12316,28 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_method(cMemcachedSt.klass, &quot;cached_errno&quot;, _wrap_MemcachedSt_cached_errno_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;flags=&quot;, _wrap_MemcachedSt_flags_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;flags&quot;, _wrap_MemcachedSt_flags_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;send_size=&quot;, _wrap_MemcachedSt_send_size_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;send_size&quot;, _wrap_MemcachedSt_send_size_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;recv_size=&quot;, _wrap_MemcachedSt_recv_size_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;recv_size&quot;, _wrap_MemcachedSt_recv_size_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;poll_timeout=&quot;, _wrap_MemcachedSt_poll_timeout_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;poll_timeout&quot;, _wrap_MemcachedSt_poll_timeout_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;connect_timeout=&quot;, _wrap_MemcachedSt_connect_timeout_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;connect_timeout&quot;, _wrap_MemcachedSt_connect_timeout_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;retry_timeout=&quot;, _wrap_MemcachedSt_retry_timeout_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;retry_timeout&quot;, _wrap_MemcachedSt_retry_timeout_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;result=&quot;, _wrap_MemcachedSt_result_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;result&quot;, _wrap_MemcachedSt_result_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;hash=&quot;, _wrap_MemcachedSt_hash_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;hash&quot;, _wrap_MemcachedSt_hash_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;distribution=&quot;, _wrap_MemcachedSt_distribution_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;distribution&quot;, _wrap_MemcachedSt_distribution_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;user_data=&quot;, _wrap_MemcachedSt_user_data_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;user_data&quot;, _wrap_MemcachedSt_user_data_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;continuum_count=&quot;, _wrap_MemcachedSt_continuum_count_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;continuum_count&quot;, _wrap_MemcachedSt_continuum_count_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;send_size=&quot;, _wrap_MemcachedSt_send_size_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;send_size&quot;, _wrap_MemcachedSt_send_size_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;recv_size=&quot;, _wrap_MemcachedSt_recv_size_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;recv_size&quot;, _wrap_MemcachedSt_recv_size_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;user_data=&quot;, _wrap_MemcachedSt_user_data_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;user_data&quot;, _wrap_MemcachedSt_user_data_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;next_distribution_rebuild=&quot;, _wrap_MemcachedSt_next_distribution_rebuild_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;next_distribution_rebuild&quot;, _wrap_MemcachedSt_next_distribution_rebuild_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;prefix_key_length=&quot;, _wrap_MemcachedSt_prefix_key_length_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;prefix_key_length&quot;, _wrap_MemcachedSt_prefix_key_length_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;hash_continuum=&quot;, _wrap_MemcachedSt_hash_continuum_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;hash_continuum&quot;, _wrap_MemcachedSt_hash_continuum_get, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;result=&quot;, _wrap_MemcachedSt_result_set, -1);
+  rb_define_method(cMemcachedSt.klass, &quot;result&quot;, _wrap_MemcachedSt_result_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;continuum=&quot;, _wrap_MemcachedSt_continuum_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;continuum&quot;, _wrap_MemcachedSt_continuum_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;on_clone=&quot;, _wrap_MemcachedSt_on_clone_set, -1);
@@ -12247,26 +12356,6 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_method(cMemcachedSt.klass, &quot;delete_trigger&quot;, _wrap_MemcachedSt_delete_trigger_get, -1);
   rb_define_method(cMemcachedSt.klass, &quot;prefix_key=&quot;, _wrap_MemcachedSt_prefix_key_set, -1);
   rb_define_method(cMemcachedSt.klass, &quot;prefix_key&quot;, _wrap_MemcachedSt_prefix_key_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;prefix_key_length=&quot;, _wrap_MemcachedSt_prefix_key_length_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;prefix_key_length&quot;, _wrap_MemcachedSt_prefix_key_length_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;hash_continuum=&quot;, _wrap_MemcachedSt_hash_continuum_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;hash_continuum&quot;, _wrap_MemcachedSt_hash_continuum_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;continuum_points_counter=&quot;, _wrap_MemcachedSt_continuum_points_counter_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;continuum_points_counter&quot;, _wrap_MemcachedSt_continuum_points_counter_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;snd_timeout=&quot;, _wrap_MemcachedSt_snd_timeout_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;snd_timeout&quot;, _wrap_MemcachedSt_snd_timeout_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;rcv_timeout=&quot;, _wrap_MemcachedSt_rcv_timeout_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;rcv_timeout&quot;, _wrap_MemcachedSt_rcv_timeout_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;server_failure_limit=&quot;, _wrap_MemcachedSt_server_failure_limit_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;server_failure_limit&quot;, _wrap_MemcachedSt_server_failure_limit_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_msg_watermark=&quot;, _wrap_MemcachedSt_io_msg_watermark_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_msg_watermark&quot;, _wrap_MemcachedSt_io_msg_watermark_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_bytes_watermark=&quot;, _wrap_MemcachedSt_io_bytes_watermark_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_bytes_watermark&quot;, _wrap_MemcachedSt_io_bytes_watermark_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_key_prefetch=&quot;, _wrap_MemcachedSt_io_key_prefetch_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;io_key_prefetch&quot;, _wrap_MemcachedSt_io_key_prefetch_get, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;next_distribution_rebuild=&quot;, _wrap_MemcachedSt_next_distribution_rebuild_set, -1);
-  rb_define_method(cMemcachedSt.klass, &quot;next_distribution_rebuild&quot;, _wrap_MemcachedSt_next_distribution_rebuild_get, -1);
   cMemcachedSt.mark = 0;
   cMemcachedSt.destroy = (void (*)(void *)) memcached_free;
   cMemcachedSt.trackObjects = 0;
@@ -12289,6 +12378,7 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_module_function(mRlibmemcached, &quot;memcached_behavior_set&quot;, _wrap_memcached_behavior_set, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_behavior_get&quot;, _wrap_memcached_behavior_get, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_generate_hash_value&quot;, _wrap_memcached_generate_hash_value, -1);
+  rb_define_module_function(mRlibmemcached, &quot;memcached_generate_hash&quot;, _wrap_memcached_generate_hash, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_flush_buffers&quot;, _wrap_memcached_flush_buffers, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_server_add_udp&quot;, _wrap_memcached_server_add_udp, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_server_add_unix_socket&quot;, _wrap_memcached_server_add_unix_socket, -1);
@@ -12308,6 +12398,7 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_module_function(mRlibmemcached, &quot;memcached_fetch_execute&quot;, _wrap_memcached_fetch_execute, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_callback_set&quot;, _wrap_memcached_callback_set, -1);
   rb_define_module_function(mRlibmemcached, &quot;memcached_callback_get&quot;, _wrap_memcached_callback_get, -1);
+  rb_define_module_function(mRlibmemcached, &quot;memcached_dump&quot;, _wrap_memcached_dump, -1);
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_DEFAULT_PORT&quot;, SWIG_From_int((int)(11211)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_MAX_KEY&quot;, SWIG_From_int((int)(251)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_MAX_BUFFER&quot;, SWIG_From_int((int)(8196)));
@@ -12346,6 +12437,7 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_DELETED&quot;, SWIG_From_int((int)(MEMCACHED_DELETED)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_VALUE&quot;, SWIG_From_int((int)(MEMCACHED_VALUE)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_STAT&quot;, SWIG_From_int((int)(MEMCACHED_STAT)));
+  rb_define_const(mRlibmemcached, &quot;MEMCACHED_ITEM&quot;, SWIG_From_int((int)(MEMCACHED_ITEM)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_ERRNO&quot;, SWIG_From_int((int)(MEMCACHED_ERRNO)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_FAIL_UNIX_SOCKET&quot;, SWIG_From_int((int)(MEMCACHED_FAIL_UNIX_SOCKET)));
   rb_define_const(mRlibmemcached, &quot;MEMCACHED_NOT_SUPPORTED&quot;, SWIG_From_int((int)(MEMCACHED_NOT_SUPPORTED)));
@@ -12436,22 +12528,22 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   SWIG_TypeClientData(SWIGTYPE_p_memcached_result_st, (void *) &amp;cMemcachedResultSt);
   rb_define_alloc_func(cMemcachedResultSt.klass, _wrap_MemcachedResultSt_allocate);
   rb_define_method(cMemcachedResultSt.klass, &quot;initialize&quot;, _wrap_new_MemcachedResultSt, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;flags=&quot;, _wrap_MemcachedResultSt_flags_set, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;flags&quot;, _wrap_MemcachedResultSt_flags_get, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;is_allocated=&quot;, _wrap_MemcachedResultSt_is_allocated_set, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;is_allocated&quot;, _wrap_MemcachedResultSt_is_allocated_get, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;expiration=&quot;, _wrap_MemcachedResultSt_expiration_set, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;expiration&quot;, _wrap_MemcachedResultSt_expiration_get, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;root=&quot;, _wrap_MemcachedResultSt_root_set, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;root&quot;, _wrap_MemcachedResultSt_root_get, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;key=&quot;, _wrap_MemcachedResultSt_key_set, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;key&quot;, _wrap_MemcachedResultSt_key_get, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;key_length=&quot;, _wrap_MemcachedResultSt_key_length_set, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;key_length&quot;, _wrap_MemcachedResultSt_key_length_get, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;value=&quot;, _wrap_MemcachedResultSt_value_set, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;value&quot;, _wrap_MemcachedResultSt_value_get, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;flags=&quot;, _wrap_MemcachedResultSt_flags_set, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;flags&quot;, _wrap_MemcachedResultSt_flags_get, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;cas=&quot;, _wrap_MemcachedResultSt_cas_set, -1);
   rb_define_method(cMemcachedResultSt.klass, &quot;cas&quot;, _wrap_MemcachedResultSt_cas_get, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;expiration=&quot;, _wrap_MemcachedResultSt_expiration_set, -1);
-  rb_define_method(cMemcachedResultSt.klass, &quot;expiration&quot;, _wrap_MemcachedResultSt_expiration_get, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;value=&quot;, _wrap_MemcachedResultSt_value_set, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;value&quot;, _wrap_MemcachedResultSt_value_get, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;key=&quot;, _wrap_MemcachedResultSt_key_set, -1);
+  rb_define_method(cMemcachedResultSt.klass, &quot;key&quot;, _wrap_MemcachedResultSt_key_get, -1);
   cMemcachedResultSt.mark = 0;
   cMemcachedResultSt.destroy = (void (*)(void *)) free_memcached_result_st;
   cMemcachedResultSt.trackObjects = 0;
@@ -12468,56 +12560,56 @@ SWIGEXPORT void Init_rlibmemcached(void) {
   rb_define_method(cMemcachedServerSt.klass, &quot;initialize&quot;, _wrap_new_MemcachedServerSt, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;is_allocated=&quot;, _wrap_MemcachedServerSt_is_allocated_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;is_allocated&quot;, _wrap_MemcachedServerSt_is_allocated_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;hostname=&quot;, _wrap_MemcachedServerSt_hostname_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;hostname&quot;, _wrap_MemcachedServerSt_hostname_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;sockaddr_inited=&quot;, _wrap_MemcachedServerSt_sockaddr_inited_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;sockaddr_inited&quot;, _wrap_MemcachedServerSt_sockaddr_inited_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;count=&quot;, _wrap_MemcachedServerSt_count_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;count&quot;, _wrap_MemcachedServerSt_count_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;cursor_active=&quot;, _wrap_MemcachedServerSt_cursor_active_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;cursor_active&quot;, _wrap_MemcachedServerSt_cursor_active_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;port=&quot;, _wrap_MemcachedServerSt_port_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;port&quot;, _wrap_MemcachedServerSt_port_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;fd=&quot;, _wrap_MemcachedServerSt_fd_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;fd&quot;, _wrap_MemcachedServerSt_fd_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;cached_errno=&quot;, _wrap_MemcachedServerSt_cached_errno_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;cached_errno&quot;, _wrap_MemcachedServerSt_cached_errno_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;cached_server_error=&quot;, _wrap_MemcachedServerSt_cached_server_error_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;cached_server_error&quot;, _wrap_MemcachedServerSt_cached_server_error_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;cursor_active=&quot;, _wrap_MemcachedServerSt_cursor_active_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;cursor_active&quot;, _wrap_MemcachedServerSt_cursor_active_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer=&quot;, _wrap_MemcachedServerSt_write_buffer_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer&quot;, _wrap_MemcachedServerSt_write_buffer_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer_offset=&quot;, _wrap_MemcachedServerSt_write_buffer_offset_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer_offset&quot;, _wrap_MemcachedServerSt_write_buffer_offset_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer=&quot;, _wrap_MemcachedServerSt_read_buffer_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer&quot;, _wrap_MemcachedServerSt_read_buffer_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_data_length=&quot;, _wrap_MemcachedServerSt_read_data_length_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_data_length&quot;, _wrap_MemcachedServerSt_read_data_length_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer_length=&quot;, _wrap_MemcachedServerSt_read_buffer_length_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer_length&quot;, _wrap_MemcachedServerSt_read_buffer_length_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_ptr=&quot;, _wrap_MemcachedServerSt_read_ptr_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;read_ptr&quot;, _wrap_MemcachedServerSt_read_ptr_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;sockaddr_inited=&quot;, _wrap_MemcachedServerSt_sockaddr_inited_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;sockaddr_inited&quot;, _wrap_MemcachedServerSt_sockaddr_inited_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;address_info=&quot;, _wrap_MemcachedServerSt_address_info_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;address_info&quot;, _wrap_MemcachedServerSt_address_info_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;type=&quot;, _wrap_MemcachedServerSt_type_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;type&quot;, _wrap_MemcachedServerSt_type_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;fd=&quot;, _wrap_MemcachedServerSt_fd_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;fd&quot;, _wrap_MemcachedServerSt_fd_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;io_bytes_sent=&quot;, _wrap_MemcachedServerSt_io_bytes_sent_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;io_bytes_sent&quot;, _wrap_MemcachedServerSt_io_bytes_sent_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;server_failure_counter=&quot;, _wrap_MemcachedServerSt_server_failure_counter_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;server_failure_counter&quot;, _wrap_MemcachedServerSt_server_failure_counter_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;weight=&quot;, _wrap_MemcachedServerSt_weight_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;weight&quot;, _wrap_MemcachedServerSt_weight_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;major_version=&quot;, _wrap_MemcachedServerSt_major_version_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;major_version&quot;, _wrap_MemcachedServerSt_major_version_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;minor_version=&quot;, _wrap_MemcachedServerSt_minor_version_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;minor_version&quot;, _wrap_MemcachedServerSt_minor_version_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;micro_version=&quot;, _wrap_MemcachedServerSt_micro_version_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;micro_version&quot;, _wrap_MemcachedServerSt_micro_version_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;count=&quot;, _wrap_MemcachedServerSt_count_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;count&quot;, _wrap_MemcachedServerSt_count_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;minor_version=&quot;, _wrap_MemcachedServerSt_minor_version_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;minor_version&quot;, _wrap_MemcachedServerSt_minor_version_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;type=&quot;, _wrap_MemcachedServerSt_type_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;type&quot;, _wrap_MemcachedServerSt_type_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_ptr=&quot;, _wrap_MemcachedServerSt_read_ptr_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_ptr&quot;, _wrap_MemcachedServerSt_read_ptr_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer_length=&quot;, _wrap_MemcachedServerSt_read_buffer_length_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer_length&quot;, _wrap_MemcachedServerSt_read_buffer_length_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_data_length=&quot;, _wrap_MemcachedServerSt_read_data_length_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_data_length&quot;, _wrap_MemcachedServerSt_read_data_length_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer_offset=&quot;, _wrap_MemcachedServerSt_write_buffer_offset_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer_offset&quot;, _wrap_MemcachedServerSt_write_buffer_offset_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;address_info=&quot;, _wrap_MemcachedServerSt_address_info_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;address_info&quot;, _wrap_MemcachedServerSt_address_info_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;next_retry=&quot;, _wrap_MemcachedServerSt_next_retry_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;next_retry&quot;, _wrap_MemcachedServerSt_next_retry_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;root=&quot;, _wrap_MemcachedServerSt_root_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;root&quot;, _wrap_MemcachedServerSt_root_get, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;limit_maxbytes=&quot;, _wrap_MemcachedServerSt_limit_maxbytes_set, -1);
   rb_define_method(cMemcachedServerSt.klass, &quot;limit_maxbytes&quot;, _wrap_MemcachedServerSt_limit_maxbytes_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;server_failure_counter=&quot;, _wrap_MemcachedServerSt_server_failure_counter_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;server_failure_counter&quot;, _wrap_MemcachedServerSt_server_failure_counter_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;io_bytes_sent=&quot;, _wrap_MemcachedServerSt_io_bytes_sent_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;io_bytes_sent&quot;, _wrap_MemcachedServerSt_io_bytes_sent_get, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;weight=&quot;, _wrap_MemcachedServerSt_weight_set, -1);
-  rb_define_method(cMemcachedServerSt.klass, &quot;weight&quot;, _wrap_MemcachedServerSt_weight_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer=&quot;, _wrap_MemcachedServerSt_read_buffer_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;read_buffer&quot;, _wrap_MemcachedServerSt_read_buffer_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer=&quot;, _wrap_MemcachedServerSt_write_buffer_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;write_buffer&quot;, _wrap_MemcachedServerSt_write_buffer_get, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;hostname=&quot;, _wrap_MemcachedServerSt_hostname_set, -1);
+  rb_define_method(cMemcachedServerSt.klass, &quot;hostname&quot;, _wrap_MemcachedServerSt_hostname_get, -1);
   cMemcachedServerSt.mark = 0;
   cMemcachedServerSt.destroy = (void (*)(void *)) free_memcached_server_st;
   cMemcachedServerSt.trackObjects = 0;</diff>
      <filename>ext/rlibmemcached_wrap.c</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>1435a02243eb17bd52e7397fe418f65464835f3d</id>
    </parent>
  </parents>
  <author>
    <name>Evan Weaver</name>
    <email>eweaver@twitter.com</email>
  </author>
  <url>http://github.com/fauna/memcached/commit/e157b74c5450f4d09f0a2e0ee57574622065ed49</url>
  <id>e157b74c5450f4d09f0a2e0ee57574622065ed49</id>
  <committed-date>2009-05-27T23:54:54-07:00</committed-date>
  <authored-date>2009-05-27T23:54:54-07:00</authored-date>
  <message>0.29-merged</message>
  <tree>80513e854b838f2ca4644d1e3e951f3710656092</tree>
  <committer>
    <name>Evan Weaver</name>
    <email>eweaver@twitter.com</email>
  </committer>
</commit>
