.Fold(Failure <Setting>(NotFound(nameof(Setting))))(record => NewSetting(MapMoney(record.GetRecord("money")).GetOrElse(DefaultMoney)));
.Fold(Failure <Payment>(NotFound(nameof(Payment))))(record => NewPayment( MapMoney(record.GetRecord("cost")),