// SPDX-License-Identifier: MIT pragma solidity ^0.8.2; contract Test_contract { uint256 public number; constructor(uint256 _number) { number = _number; } function get_number() public view returns (uint256) { return number; } } contract App { event NewTest(address sender, uint256 number); function new_Test(uint256 number) public returns (address) { address mynew = address(new Test_contract({_number: number})); emit NewTest(tx.origin, number); return mynew; } }