Atualize o local múltiplo do Firebase com erro: Path é um ancestral do Path. Rápido

Quando tento atualizar o banco de dados em vários locais usando
.updateChildValues, Recebo o erro listado abaixo. Como posso resolver este problema?

Finalizando o aplicativo devido à exceção não capturada 'InvalidFirebaseData', motivo: '(updateChildValues :) Caminho inválido no objeto. O caminho (/ Payments / osGRNIZzbRWtllehAXbGJ5NtmRe2 / 1513178895/730890027) é um ancestral de (/ Payments / osGRNIZzbRWtllehAXbGJ5NtmRe2 / 1513178895/730890027 / bookings). '

      let timeStamp = String(Int(Date().timeIntervalSince1970))
        let paymentRef = self.random9DigitString()

        var finalBookingArray = [String: AnyObject]()
        for booking in self.bookingsFromQuery {

            let bookingForPayPeriod = DisbursePaymentData(

                numberOfHours: booking.NumberOfHours,
                bookingAmount: booking.BookingAmount,
                amountPaidToCleanerForBooking: booking.AmountPaidToCleanerForBooking ?? "",
                checkInDate: booking.checkInDate ?? "",
                checkOutDate: booking.checkOutDate ?? "",
                checkInTimeStamp: booking.checkInTimeStamp ?? "",
                checkOutTimeStamp: booking.checkOutTimeStamp ?? "",
                ratePriceClient: booking.RatePriceClient ?? "",
                rateNumberClient: booking.RateNumberClient ?? "",
                ratePriceCleaner: booking.RatePriceCleaner ?? "",
                rateNumberCleaner: booking.RateNumberCleaner ?? "",
                cancelledBy: booking.objectsUnderCancelledBy)

              let bookingCompleted = bookingForPayPeriod.convertDisbursePaymentDataToAnyObject()
                finalBookingArray[booking.BookingNumber] = bookingCompleted
        }

        let finalObject = DisbursePaymentData(
            payPeriodDateStartDate: self.fromDateString.text!,
            payPeriodEndDate: self.toDateString.text!,
            payPeriodTimeStampStartDate: String(describing: self.startDateTimeStamp),
            payPeriodTimeStampEndDate: String(describing: self.endDateTimeStamp),
            paymentRef: paymentRef)

      let objectComplete = finalObject.toAnyObj()
          let childUpdates = ["Payments/\(uid)/\(timeStamp)/\(paymentRef)" : objectComplete,
                              "Payments/\(uid)/\(timeStamp)/\(paymentRef)/\("bookings")" : finalBookingArray
        ] as [String : Any] 

    self.dbRef.updateChildValues(childUpdates)

esquema:

Payments  
 -timeStamp
   -paymentRef


       payPeriodDateStartDate: date1
       payPeriodEndDate: - date 2
       payPeriodTimeStampStartDate: tstamp1
       payPeriodTimeStampEndDate:   tstamp2
       paymentRef: generate9DIgits
       Total:
       allfees: 
       netPay:
       //---->>the key:value pairs above represent objectComplete that I set above

      - bookings  // -> this is finalBookingArray that I set above
           booking1
             - hours: 
             - originalPriceOfBooking
             - amountPaidToCleanerForBooking
             -ratePriceClientContent
             -rateNumberClientContent
             -ratePriceCleanerContent
             -rateNumberCleanerContent
             -checkInDate:
             -checkOutDate:                    
             -checkInTimeStamp:
             -checkOutTimeStamp:
             -cancelledBy
               -timeStamp
                   values under timeStamp
 booking2

questionAnswers(0)

yourAnswerToTheQuestion