pragma ever-solidity >= 0.68.0; import "./../access/InternalOwner.tsol"; import "./RandomNonce.tsol"; import "./CheckPubKey.tsol"; contract LoudSpeaker is InternalOwner, RandomNonce, CheckPubKey { event Echo(string text); constructor(address _owner) checkPubKey { tvm.accept(); setOwnership(_owner); } function echo(string text) external view onlyOwner { emit Echo(text); } }