mapping and initialization