tostring cached