!7 set flag DynModule. sclass TelegramThinkBot > DynPrintLog { void start { loadFunctions_preferCached(); watchStructureLog_plusLastLine(500, telegramLogFile(), voidfunc(Map map) { printStruct(map); try { makeAndCall_initChild.set(voidfunc(Class c) { copyFields(mc(), c, 'telegram_msg_tl) }); temp tempSetThreadLocal(telegram_msg_tl(), map); S s = getString(map, 'text); new Matches m; S procedure = nlLookup(mechMap("Telegram Procedures"), s, m); if (procedure != null) { procedure = expandDollarRefsToMatches(procedure, m, true); print(">> " + procedure); postMessage(strOrNull(javaEvalOrInterpret(procedure))); } if (swic_trim(s, "!parse ", m)) postMessage(ai_renderCulledParseTree(ai_parseToTreeWithGuessing(m.rest()))); if (swic_trim(s, "!simplify ", m)) postMessage(lines(ai_parseTree_simplifiedTexts(ai_parseToTreeWithGuessing(m.rest())))); if (telegram_amIAuthorized()) { if (swic_trim(s, "!eval ", m)) postMessage(strOrNull(javaEvalOrInterpret(m.rest()))); } } catch e { printStackTrace(e); postMessage(exceptionToStringShort(e)); } }); } void postMessage(S s) { telegram_postToSendLog(s); } }