code: def load(self, key):
          
  
          # Turn the key into a BucketKey
          if isinstance(key, basestring):
              key = BucketKey.decode(key)
  
          # Make sure the uuids match
          if key.uuid != self.uuid:
              raise ValueError("%s is not a bucket corresponding to this limit" %
                               key)
  
          # If the key is a version 1 key, load it straight from the
          # database
          if key.version == 1:
              raw = self.db.get(str(key))
              if raw is None:
                  return self.bucket_class(self.db, self, str(key))
              return self.bucket_class.hydrate(self.db, msgpack.loads(raw),
                                               self, str(key))
  
          # OK, use a BucketLoader
          records = self.db.lrange(str(key), 0, -1)
          loader = BucketLoader(self.bucket_class, self.db, self, str(key),
                                records)
  
          return loader.bucket
docs: Given a bucket key, load the corresponding bucket.
  
          :param key: The bucket key.  This may be either a string or a
                      BucketKey object.
  
          :returns: A Bucket object.