complete join_mapper & demo