move speak button, and now pack.ls retry when failed to generate xhtmls