move MapEvent to core package