code: @Override
  	public final <T extends Serializable> Name<T> decode(String data) {
  		if(data==null) {
  			return null;
  		}
  		try {
  			byte[] serializedData=BaseEncoding.base64().decode(data);
  			Serializable subject=SerializationUtils.deserialize(serializedData, Serializable.class);
  			return assemble(subject);
  		} catch (IOException e) {
  			throw new AssertionError("Deserialization should not fail",e);
  		}
  	}
docs: {@inheritDoc}