sclass WebChatBotMsg { S fullHTML; bool fromUser; S msgHTML; } static L webBotTester_extractMsgs(S html) { new L out; LLS msgs = findContainerTagWithClass(tok, "span", "chat_msg_item"); for (LS tokMsg : msgs) { new WebChatBotMsg msg; msg.fullHTML = trimJoin(tokMsg); tokMsg = dropFirstTwoAndLastTwo(tokMsg); for (LS srSpan : findContainerTagWithClass(tokMsg, "span", "sr-only")) setAllToEmptyString(dropFirstAndLast2(srSpan)); msg.fromUser = false; msg.msgHTML = trimJoin(tokMsg); out.add(msg); } ret out; }