Updating opaque prototype