better chat structure