updated getinstance