def METHOD_NAME(self, value, *args, **kwargs):
    if self._is_devices_config(value):
        # avoid mutating the original object
        value = copy.deepcopy(value)
        for device in value["devices"]:
            # AuthenticatorData is a non-json-serializable bytes subclass
            if isinstance(device["binding"], AuthenticatorData):
                device["binding"] = base64.b64encode(device["binding"]).decode()
    return super().METHOD_NAME(value, *args, **kwargs)