use ket and value subtype