adding composite type support (init)
adding composite type support (init)