Also the CREATE3 is not good an good replacement for Keyless Deployment, if we want anyone to deploy a common good cross-chain contract (such as the EIP-1820), we must allow anyone to deploy it’s bytecode at an deterministic address, without the expenses of the Keyless Deployment.
To accomplish that I implemented this Factory contract, that supports both CREATE3 and CREATE2 methods, with an additional feature that allow you to provide custom arguments to the constructor without influencing the resulting address.