maps refactored and json added