added structs for create instance and CreateInstance method UNTESTED