reasonably functional trans-only, trans-switching and trans-none implementation