utils and gun override functions