so… say I initialize a simulator with ``` def simulate(): from amaranth.sim import Simulator sim = Simulator(Toplevel()) sim.add_process(some_async_func) with sim.write_vcd("dump.vcd"): sim.run_until(10e-3, run_passive=True) ``` some_async_func gets a "ctx" object. Is there a way to go from that ctx objcet to getting the Toplevel() object I passed in to Simulator? I see nothing in the docs, and looking at the code it looks like I should be looking at _private variables which I shouldn't. So it looks like the answer is "no, make some_async_func a closure" but I just wanted to make sure.