lets move this to an explicit method