add combuctor