factory Shapes.fromMap(Map<String, dynamic> map) { return Shapes( action: map['action'] as String, payload: ShapePayload.fromMap(map['payload']), ); }