removed principal != null and usr msg