add blob optimize functions