added constructor inheritance