function [LoadingRate, StandardError, ConfidenceInterval] = bootstrapErrorEstimation(this, ovenObj,  NumberOfLoadedAtoms)
    n                              = this.NumberOfAtoms;
    SampleLength                   = this.BootstrapSampleLength;
    NumberOfBootsrapSamples        = this.BootstrapSampleNumber;
    MeanCaptureRatioInEachSample   = zeros(1,NumberOfBootsrapSamples);
    for SampleNumber = 1:NumberOfBootsrapSamples
        BoostrapSample                             = datasample(NumberOfLoadedAtoms, SampleLength); % Sample with replacement
        MeanCaptureRatioInEachSample(SampleNumber) = mean(BoostrapSample) / n; % Empirical bootstrap distribution of sample means
    end

    LoadingRate = mean(MeanCaptureRatioInEachSample) * ovenObj.ReducedFlux;

    Variance = 0; % Bootstrap Estimate of Variance
    for SampleNumber = 1:NumberOfBootsrapSamples
        Variance = Variance + (MeanCaptureRatioInEachSample(SampleNumber) - mean(MeanCaptureRatioInEachSample))^2;
    end

    StandardError      = sqrt((1 / (NumberOfBootsrapSamples-1)) * Variance) * ovenObj.ReducedFlux;

    ts                 = tinv([0.025  0.975],NumberOfBootsrapSamples-1);  % T-Score
    ConfidenceInterval = LoadingRate + ts*StandardError;                  % 95% Confidence Intervals
end