abstract sclass DynGazelleBot > DynPrintLogAndEnabled { switchable S _user; switchable S _botToken; new Gazelle_GrabPostsLoop grabLoop; start { grabLoop.fields.add("type"); dm_startThread(r runGrabLoop); } void runGrabLoop { dm_copyFieldsToObject(grabLoop, "_user", "_botToken", "enabled"); grabLoop.verbose = true; grabLoop.onChange(r change); grabLoop.handlePost = post -> enter { handlePost(post); }; grabLoop.run(); } swappable void handlePost(GazellePost post) { } }