modify combuctor