A deadend! Can the constructor of parent contract be embeded inside this contructor?

Hey guys, I’m wondering if it is possible to embed the constructor of the parent contract inside the constructor of this contract.

A scenario would arise wherein the implementation contract in the BeaconProxy pattern has a slot pointing to an external storage contract, and I think this would require this proxy contract to have a slot to store the storage contract address as well. See the following code snippet for example.

However, the constructor of BeaconProxy would be called before the body of constructor of this contract, and this would cause a revert since the storage slot has not been setup yet and the calldata data cannot be executed correctly in the implementation contract.

This would be a dead end if there is no way to execute the constructor of BeaconProxy after executing the body of this constructor first.

Hope I have made this question clear and I am looking for something given at the bottom.

contract GameProxy is BeaconProxy {

    bytes32 private constant _STORAGE_SLOT = 0x23bdfa8033717db08b14621917cfe422b93b161b8e3ef1c873d2197616ec0bb2;

    constructor(address beacon, address externalStorageAddr, bytes memory data)
        BeaconProxy(beacon, data)
    {
        assert(_STORAGE_SLOT == bytes32(uint256(keccak256("eip1967.proxy.storage")) - 1));
        bytes32 slot = _STORAGE_SLOT;
        assembly {
            sstore(slot, externalStorageAddr)
        }
    }
}
contract GameProxy is BeaconProxy {

    bytes32 private constant _STORAGE_SLOT = 0x23bdfa8033717db08b14621917cfe422b93b161b8e3ef1c873d2197616ec0bb2;

    constructor(address beacon, address externalStorageAddr, bytes memory data) {
        assert(_STORAGE_SLOT == bytes32(uint256(keccak256("eip1967.proxy.storage")) - 1));
        bytes32 slot = _STORAGE_SLOT;
        assembly {
            sstore(slot, externalStorageAddr)
        }
        BeaconProxy(beacon, data)
    }
}

A work around can be found here.