It seems to me like the implementation contract instance is created within the creation of the proxy contract when deployed I use the
upgrades.deployProxy() function as creation of the implementation contract is an internal tx in the proxy. But I can't seem to find where the creation of the implementation contract was actually being created within the proxy.
How is this done and in which function and line is this done in the
Hardhat, OZ upgrades plugin.