choose more meaningful type names for component values