implement free response state