[INTERNAL] modified constructor