public function fromArray($array)
    {

        if (!empty($array['number'])) {
            $this->_ensureNumber()->fromArray($array['number']);
            unset($array['number']);
        }

        if (!empty($array['map_data'])) {
            $this->setMapData(Mapping::create($array['map_data']));
            unset($array['map_data']);
        }

        parent::fromArray($array);
    }