Map<String, dynamic> toJson() { return { 'bounds': bounds.toJson(), 'shape': [...shape], 'marginShape': [...marginShape], }; }