backend handles map