moved tag_info_t out of the interface