made ParentTagProvider be singleton