inner_t -> variant_t