diff --git a/RTCP/Cobalt/CoInterface/src/Parset.cc b/RTCP/Cobalt/CoInterface/src/Parset.cc index d1a8c613b642cbb9953e99adfa55a7eeea768da1..07a8eb0ad8e615ee5623c667801a68b1544d77a6 100644 --- a/RTCP/Cobalt/CoInterface/src/Parset.cc +++ b/RTCP/Cobalt/CoInterface/src/Parset.cc @@ -1321,6 +1321,8 @@ namespace LOFAR // The correlator.enabled setting is used as default value for sap.correlatorEnabled // and thus has thus be set before addSAPs is called. settings.correlator.enabled = getBool("Observation.DataProducts.Output_Correlated.enabled", false); + // Doppler correction in correlator + settings.correlator.dopplerCorrection= getBool("Cobalt.Correlator.dopplerCorrection", false); // Pointing information addSAPs(settings); diff --git a/RTCP/Cobalt/CoInterface/src/Parset.h b/RTCP/Cobalt/CoInterface/src/Parset.h index b780569a615f67dc03aff1c6e62144bdda04debc..2618fd4d6ceba46702a63453df836ec9ec98e6ef 100644 --- a/RTCP/Cobalt/CoInterface/src/Parset.h +++ b/RTCP/Cobalt/CoInterface/src/Parset.h @@ -508,6 +508,11 @@ namespace LOFAR // set to: subbandWidth() / nrChannels double channelWidth; + // Doppler correction + // + // key: Cobalt.Correlator.dopplerCorrection, default false + bool dopplerCorrection; + // The number of samples in one block of one channel. // // key: OLAP.CNProc.integrationSteps diff --git a/RTCP/Cobalt/CoInterface/test/tParset.cc b/RTCP/Cobalt/CoInterface/test/tParset.cc index 4dd971a71fba85e44aa0b388265a827722afbff3..c70431f26ebbee7d0f1dfd903d7fafc85aba34fe 100644 --- a/RTCP/Cobalt/CoInterface/test/tParset.cc +++ b/RTCP/Cobalt/CoInterface/test/tParset.cc @@ -963,6 +963,20 @@ SUITE(correlator) { } } + TEST(dopplerCorrection) { + LOG_INFO("Test correlator dopplerCorrection"); + + Parset ps = makeDefaultTestParset(); + + // set + ps.replace("Observation.DataProducts.Output_Correlated.enabled", "true"); + ps.replace("Cobalt.Correlator.dopplerCorrection", "true"); + ps.updateSettings(); + + // verify settings + CHECK_EQUAL(true, ps.settings.correlator.dopplerCorrection); + } + TEST(nrSamplesPerChannel) { LOG_INFO("Test correlator nrSamplesPerChannel"); diff --git a/RTCP/Cobalt/GPUProc/doc/doppler-correction/Doppler.md b/RTCP/Cobalt/GPUProc/doc/doppler-correction/Doppler.md new file mode 100644 index 0000000000000000000000000000000000000000..21fd1d9f5ba3eb7e3f1b69f7fa976a7c7e236eac --- /dev/null +++ b/RTCP/Cobalt/GPUProc/doc/doppler-correction/Doppler.md @@ -0,0 +1,22 @@ +# Doppler correction +This is a brief description of how Doppler correction is implemented in the FIR_Filter and subsequent DelayAndBandpass correction. + + +Let the intrinsic sky signal be *g(t)* with its Fourier transform *G(f)*. Due to the Doppler shift, the measured signal will have a frequency shift *f_0* and in order to get back the orignal signal, we shift the measured signal Fourier transform as *G(f-f_0)*, which is done in continuous time by multiplication of *g(t)* with *exp(-j 2 pi f_0 t)*. + +<img src="phaseramp.png" width="900"/> + +The signal streaming to FIR_Filter is a discrete time signal, about 190k samples per one block of about 1 second duration (see the figure). The sampling frequency is *f_s* = clock frequency/1024. +The delays at the start of the block of data and after the end of the block are *tau0* and *tau1*, respectively. + +Let *t* denote time within the block and *T* be the duration of the block, so *t* in *[0,T]*. +The linear delay for the sample at time *t* is *tau=tau1 (t/T) + tau0(1-t/T)*. The corresponding discrete time exponential is *exp(-j 2 pi f tau)*. Discarding the constant terms (that do not vary with time), the exponential becomes *exp(-j 2 pi f (tau1-tau0)/T t)*. The subband frequency is *f*. + +As seen in the figure, each block is divided to many FFT blocks, so within each block, we use the same delay gradient *(tau0-tau0)/T* to calculate the phase ramp. In other words, the constant part of the delay ramp is not used as it will only increase decorelation, not affecting the needed shift in frequency. + +To summarize, the exact term used at channel *chan* is *j 2 pi (f/f_s) (tau1-tau0)/NR_FFT_BLOCKS chan/NR_CHANNELS*. + +Due to this correction, the shift in channels is *(tau1-tau0)/NR_FFT_BLOCKS (f/f_s)*. The corresponding shift in frequency is *(tau1-tau0)/NR_FFT_BLOCKS (f/NR_CHANNELS)*. + +The Doppler correction is not affected by the rotation of the dipoles, so both polarizations get the same correction (unless the delays for each polarization is different). +The bandpass correction is modified by linear interpolation of the bandpass correction weights with the appropriate channel shift. \ No newline at end of file diff --git a/RTCP/Cobalt/GPUProc/doc/doppler-correction/phaseramp.png b/RTCP/Cobalt/GPUProc/doc/doppler-correction/phaseramp.png new file mode 100644 index 0000000000000000000000000000000000000000..ba38edb23b04f801e01ceaa6e7be990214c73dbe Binary files /dev/null and b/RTCP/Cobalt/GPUProc/doc/doppler-correction/phaseramp.png differ diff --git a/RTCP/Cobalt/GPUProc/doc/quantization/Quantization.md b/RTCP/Cobalt/GPUProc/doc/quantization/Quantization.md new file mode 100644 index 0000000000000000000000000000000000000000..4a0858dd7d1210d639ac823db8b00b0af14d5cf0 --- /dev/null +++ b/RTCP/Cobalt/GPUProc/doc/quantization/Quantization.md @@ -0,0 +1,38 @@ +This document describes the inner workings of the CUDA kernel used in quantizing the 32 bit input data into 8 bit data. +The Parset keys used in quantization of beamformed data are + +For coherent Stokes: + +* `Cobalt.BeamFormer.CoherentStokes.quantize=false` +* `Cobalt.BeamFormer.CoherentStokes.quantizeBits=8` +* `Cobalt.BeamFormer.CoherentStokes.quantizeScaleMax=5` +* `Cobalt.BeamFormer.CoherentStokes.quantizeScaleMin=-5` +* `Cobalt.BeamFormer.CoherentStokes.quantizeIpositive=false` + +For incoherent Stokes: + +* `Cobalt.BeamFormer.IncoherentStokes.quantize=false` +* `Cobalt.BeamFormer.IncoherentStokes.quantizeBits=8` +* `Cobalt.BeamFormer.IncoherentStokes.quantizeScaleMax=5` +* `Cobalt.BeamFormer.IncoherentStokes.quantizeScaleMin=-5` +* `Cobalt.BeamFormer.IncoherentStokes.quantizeIpositive=false` + +The values for each key shown above are the default values (if that particular key is not defined in the parset). The description of the keys: + +* `.quantize=true|false`: If true, the output will be quantized (instead of using 32 bit float as output datatype, a reduced number of bits will be used). +* `.quantizeBits=8`: Currently, 8 bits will be used to store each quantized data point. This implies the output data type will be signed char (int8_t) or unsigned char (uint8_t). In addtion, scale and offset of each data block will also be produced as 32 bit float values. +* `.quantizeScaleMax` and .`quantizeScaleMin`: These two keys will be used to cut off extreme data points above or below a threshold, prior to quantization. +* `.quantizeIpositive=true|false`: If `quantizeScaleMin` is negative, the usable range for Stokes I will also include some values below zero. However, by definition, Stokes I is always positive. By setting this key to true, we can override this to only consider the positive range of Stokes I for quantization. In this way, the available number of bits in the quantizer are not wasted by representing values that do not exist in the orignal data. + +Let us call the values defined by `quantizeScaleMax` and `quantizeScaleMin` as `Smax` and `Smin`, respectively. + +<img src="quantization.png" alt="How quantization works" width="700"/> + +We can explain the workings of the quantization kernel by looking at the probability density function (PDF) from the input 32 bit data to output 8 bit data as shown in the above figure. + + * The input PDF will have data in the range -inf...inf with one exception, for Stokes I, it will be 0...inf. (The notation inf represents infinity). This is shown on the top plot. + * Using the user defined *Smax* and *Smin*. the range of the data to be quantized is selected. In most cases it is the range between *Smin*×σ and *Smax*×σ. (σ is the standard deviation). The user can specify the best values for *Smax* and *Smin* depending on how the input data are distributed (i.e., by looking at the PDF). The input data that fall outside this range are cut-off as show in in the middle plot. In addition the mean (μ) of the original data will be subtracted in the cases of Stokes Q,U,V. + * Finally, the original range is mapped to values in the range 0 to 255 (for unsigned data, i.e., Stokes I) or in the range -128 to 127 (for signed data) as shown in the bottom plot. The output PDF will be the area-sampled version of the input PDF (after cutoff) as shown in this plot. + * A special case is quantization of Stokes I, because the original data have values in 0...inf. If the user-specified *Smin* value is negative, some useful number of quantized levels will be used to represent negative data that does not exist. Therefore, in this case, the user supplied *Smin* value will be over-ridden to use 0 instead. This behaviour is enabled by setting `.quantizeIpositive=true`. + +In order to (approximately) recover the original data from the quantized data, the scale and offset that are used to transform the data to the ranges 0 to 255 or -128 to 127 are also produced as output. The scale and offset are determined per each block of data (duration approximately 1 sec) and per each channel and polarization. The number of data samples per each block is dependent on the integration factor and the sampling clock frequency. diff --git a/RTCP/Cobalt/GPUProc/doc/quantization/quantization.png b/RTCP/Cobalt/GPUProc/doc/quantization/quantization.png new file mode 100644 index 0000000000000000000000000000000000000000..202186057f444e20f7b233ab65f3500aebaa9644 Binary files /dev/null and b/RTCP/Cobalt/GPUProc/doc/quantization/quantization.png differ diff --git a/RTCP/Cobalt/GPUProc/share/gpu/kernels/DelayAndBandPass.cu b/RTCP/Cobalt/GPUProc/share/gpu/kernels/DelayAndBandPass.cu index abbaa1d8ce3b6ea602275403a3578cb514f7c5a8..dd8b895644a5c87d41857f6c57526f395c50429c 100644 --- a/RTCP/Cobalt/GPUProc/share/gpu/kernels/DelayAndBandPass.cu +++ b/RTCP/Cobalt/GPUProc/share/gpu/kernels/DelayAndBandPass.cu @@ -45,6 +45,8 @@ * - @c DELAY_COMPENSATION: defined or not * - @c BANDPASS_CORRECTION: defined or not * - @c DO_TRANSPOSE: defined or not +* - @c DOPPLER_CORRECTION: if defined, DELAY_COMPENSATION and CLOCK_MHZ also must be defined +* - @c CLOCK_MHZ: clock frequency in MHz, normally 200 or 160 */ #include "gpu_math.cuh" @@ -62,6 +64,15 @@ # undef BANDPASS_CORRECTION #endif +#if defined DOPPLER_CORRECTION +#ifndef CLOCK_MHZ +#error DOPPLER_CORRECTION=1 but CLOCK_MHZ not defined +#endif +#ifndef DELAY_COMPENSATION +#error DOPPLER_CORRECTION=1 but DELAY_COMPENSATION not enabled +#endif +#endif + #if defined DO_TRANSPOSE typedef fcomplex(*OutputDataType)[NR_STATIONS][NR_CHANNELS][NR_SAMPLES_PER_CHANNEL][NR_POLARIZATIONS]; #else @@ -128,7 +139,7 @@ extern "C" { const fcomplex * filteredDataPtr, const unsigned * delayIndices, double subbandFrequency, - unsigned beam, + unsigned beam, // =nrSAPS const double * delaysAtBeginPtr, const double * delaysAfterEndPtr, const double * phase0sPtr, @@ -139,7 +150,9 @@ extern "C" { /* The z dimension is NR_STATIONS wide. */ const unsigned station = blockIdx.z * blockDim.z + threadIdx.z; +#if defined DELAY_COMPENSATION const unsigned delayIdx = delayIndices[station]; +#endif /* * channel: will cover all channels @@ -173,10 +186,12 @@ extern "C" { #endif #if defined BANDPASS_CORRECTION +#ifndef DOPPLER_CORRECTION BandPassFactorsType bandPassFactors = (BandPassFactorsType)bandPassFactorsPtr; float weight((*bandPassFactors)[channel]); #endif +#endif #if defined DELAY_COMPENSATION DelaysType delaysAtBegin = (DelaysType)delaysAtBeginPtr; @@ -222,9 +237,38 @@ extern "C" { // Calculate the angles to rotate for for the first and (beyond the) last sample. // // We need to undo the delay, so we rotate BACK, resulting in a negative constant factor. +#if defined DOPPLER_CORRECTION + const double2 freqOffset=(( delayAfterEnd - delayAtBegin ))*((subbandFrequency / NR_CHANNELS)/(NR_SAMPLES_PER_CHANNEL)); //divide this with (CLOCK_MHZ*1e6/1024.0)/NR_CHANNELS to get channel offset + + // Since Doppler correction has already been applied at subbandFrequency, + // we shift frequencies + const double2 phiAtBegin = make_double2(-2.0 * M_PI * (frequency+freqOffset.x) * delayAtBegin.x - ((*phase0s)[delayIdx]).x, + -2.0 * M_PI * (frequency+freqOffset.y) * delayAtBegin.y - ((*phase0s)[delayIdx]).y); + const double2 phiAfterEnd = make_double2(-2.0 * M_PI * (frequency+freqOffset.x) * delayAfterEnd.x - ((*phase0s)[delayIdx]).x, + -2.0 * M_PI * (frequency+freqOffset.y) * delayAfterEnd.y - ((*phase0s)[delayIdx]).y); + +#if defined BANDPASS_CORRECTION + BandPassFactorsType bandPassFactors = (BandPassFactorsType)bandPassFactorsPtr; + + // positive offset means moving to right ->-> + const double2 chanOffset=freqOffset*(NR_CHANNELS/(CLOCK_MHZ*1e6/1024.0)); //mult this with (CLOCK_MHZ*1e6/1024.0)/NR_CHANNELS to get freq + + const float2 chanShifted={chanOffset.x+channel,chanOffset.y+channel}; + unsigned chanlow[2]={__float2uint_rd(chanShifted.x),__float2uint_rd(chanShifted.y)}; + // check and adjust to valid range + chanlow[0]=(chanlow[0]>NR_CHANNELS-1?NR_CHANNELS-1:chanlow[0]); + chanlow[1]=(chanlow[1]>NR_CHANNELS-1?NR_CHANNELS-1:chanlow[1]); + const unsigned chanhigh[2]={(chanlow[0]<NR_CHANNELS-1?chanlow[0]+1:chanlow[0]), + (chanlow[1]<NR_CHANNELS-1?chanlow[1]+1:chanlow[1])}; + const float2 w1={chanShifted.x-chanlow[0],chanShifted.y-chanlow[1]}; + float2 weight=make_float2((*bandPassFactors)[chanlow[0]]*(1.0f-w1.x)+(*bandPassFactors)[chanhigh[0]]*w1.x, + (*bandPassFactors)[chanlow[1]]*(1.0f-w1.y)+(*bandPassFactors)[chanhigh[1]]*w1.y); +#endif +#else const double2 phiAtBegin = -2.0 * M_PI * frequency * delayAtBegin - (*phase0s)[delayIdx]; const double2 phiAfterEnd = -2.0 * M_PI * frequency * delayAfterEnd - (*phase0s)[delayIdx]; -#endif +#endif // DOPPLER_CORRECTION +#endif // DELAY_COMPENSATION for (unsigned time = timeStart; time < NR_SAMPLES_PER_CHANNEL; time += timeInc) { @@ -250,10 +294,17 @@ extern "C" { #endif #if defined BANDPASS_CORRECTION +#if defined DOPPLER_CORRECTION + sampleX.x *= weight.x; + sampleX.y *= weight.x; + sampleY.x *= weight.y; + sampleY.y *= weight.y; +#else sampleX.x *= weight; sampleX.y *= weight; sampleY.x *= weight; sampleY.y *= weight; +#endif #endif // Support all variants of NR_CHANNELS and DO_TRANSPOSE for testing etc. diff --git a/RTCP/Cobalt/GPUProc/share/gpu/kernels/FIR_Filter.cu b/RTCP/Cobalt/GPUProc/share/gpu/kernels/FIR_Filter.cu index a0cea1c64a1028625f966f18fbd5faa33faa9ca5..45bc9d0fcd2cbe46aded37e1d2f0614e5c927e4d 100644 --- a/RTCP/Cobalt/GPUProc/share/gpu/kernels/FIR_Filter.cu +++ b/RTCP/Cobalt/GPUProc/share/gpu/kernels/FIR_Filter.cu @@ -71,8 +71,14 @@ typedef float SampleType; typedef signed char (*SampledDataType)[NR_STABS][NR_SAMPLES_PER_CHANNEL][NR_CHANNELS][NR_POLARIZATIONS]; #define SAMPLE(time) extractRI((*sampledData)[station][time][channel][pol], ri) # else +#ifndef DOPPLER_CORRECTION typedef SampleType (*SampledDataType)[NR_STABS][NR_SAMPLES_PER_CHANNEL][NR_CHANNELS][NR_POLARIZATIONS * COMPLEX]; #define SAMPLE(time) (*sampledData)[station][time][channel][pol_ri] +#else //DOPPLER_CORRECTION +typedef SampleType (*SampledDataType)[NR_STABS][NR_SAMPLES_PER_CHANNEL][NR_CHANNELS][NR_POLARIZATIONS][COMPLEX]; +#define REAL(time) convertIntToFloat((*sampledData)[station][time][channel][pol][0]) +#define IMAG(time) convertIntToFloat((*sampledData)[station][time][channel][pol][1]) +#endif //DOPPLER_CORRECTION #endif #else @@ -88,10 +94,38 @@ inline __device__ float convertIntToFloat(float x) } #endif +// subbandIdx=1 is assumed below +#ifdef DOPPLER_CORRECTION +typedef float (*HistoryDataType)[1][NR_STABS][NR_TAPS - 1][NR_CHANNELS][NR_POLARIZATIONS * COMPLEX]; +#else typedef SampleType (*HistoryDataType)[1][NR_STABS][NR_TAPS - 1][NR_CHANNELS][NR_POLARIZATIONS * COMPLEX]; +#endif typedef float (*FilteredDataType)[NR_STABS][NR_POLARIZATIONS][NR_SAMPLES_PER_CHANNEL][NR_CHANNELS][COMPLEX]; typedef const float (*WeightsType)[NR_CHANNELS][NR_TAPS]; +#ifdef DOPPLER_CORRECTION +// Check if CLOCK_MHZ is also defined +#ifndef CLOCK_MHZ +#error DOPPLER_CORRECTION=1 but CLOCK_MHZ not defined +#endif + +// this is faster than doing "pol ? sin(phi) : cos(phi)" +// because that statement forces CUDA to still compute both +// as GPUs always compute both branches. +inline __device__ float2 sincos_d2f_select(double phi, int ri) +{ + double r[2]; + + sincos(phi, &r[1], &r[0]); + float c=__double2float_rz(r[0]); + float s=__double2float_rz(r[1]); + // return: ri==0 (cos,-sin) ri==1 (sin,cos) + return make_float2((ri?s:c),(ri?c:-s)); +} + +typedef const double(*DelaysType)[1][NR_STABS][NR_POLARIZATIONS]; // 2 Polarizations; in seconds +typedef const double(*Phase0sType)[NR_STABS][NR_POLARIZATIONS]; // 2 Polarizations; in radians +#endif /* DOPPLER_CORRECTION */ /*! * Applies the Finite Input Response filter defined by the weightsPtr array @@ -122,7 +156,8 @@ typedef const float (*WeightsType)[NR_CHANNELS][NR_TAPS]; * COMPLEX | 2 | size of complex in number of floats/doubles * INPUT_IS_STATIONDATA | defined or not | if true, input is intX[stabs][samples][pol] * | | if false, input is float[stabs][pol][samples] - * + * DOPPLER_CORRECTION | defined or not | If true, apply subband-based delay compensation + * CLOCK_MHZ | >0 clock Freq in MHz | Must be defined with DOPPLER_CORRECTION * Execution configuration: (TODO: enforce using __attribute__ reqd_work_group_size) * - Work dim == 2 (can be 1 iff NR_STABS == 1) * + Inner dim: the channel, pol, real/imag the thread processes @@ -137,7 +172,10 @@ __global__ void FIR_filter( void *filteredDataPtr, const void *sampledDataPtr, const void *weightsPtr, void *historyDataPtr, - unsigned subbandIdx) + const double * delaysAtBeginPtr, + const double * delaysAfterEndPtr, + unsigned subbandIdx, + double subbandFrequency) { SampledDataType sampledData = (SampledDataType) sampledDataPtr; FilteredDataType filteredData = (FilteredDataType) filteredDataPtr; @@ -159,6 +197,38 @@ __global__ void FIR_filter( void *filteredDataPtr, #endif unsigned station = blockIdx.y; +#ifdef DOPPLER_CORRECTION + DelaysType delaysAtBegin = (DelaysType)delaysAtBeginPtr; + DelaysType delaysAfterEnd = (DelaysType)delaysAfterEndPtr; + const double delayAtBegin = (*delaysAtBegin)[0][station][pol]; + const double delayAfterEnd = (*delaysAfterEnd)[0][station][pol]; + + // Calculate the angles to rotate for for the first and (beyond the) last sample. + // + // We need to undo the delay, so we rotate BACK, resulting in a negative constant factor. + // Note we use the sample frequency=CLOCK_MHZ/1024 (MHz) to normalize the frequency + // Let tau_0: delay at begin, tau_1: delay after end + // t : time within a block, T: total time (duration) of block, + // So, t in [0,T] and t/T=blockoffset in [0,1] + // then delay at t = tau_1 (t/T) + tau_0 (1 - t/T) + // exponent at frqeuency f = -j 2 pi (f tau) + // simplifying, exponent = -j 2 pi f tau_0 - j 2 pi f (tau_1 -tau_0) (t/T) + // We only need the term that changes with t, so discard the rest + // and only keep : 2 pi f (tau_1 - tau_0) (t/T) for the rest of calculations + // also replace f with f/f_s where f_s is sample frequency = clock/1024 + // phi = phiGradient x blockOffset + // Offset of this sample between begin and end. = t/T fraction, within one FFT block of NR_CHANNELS + const double phi = 2.0 * M_PI * (subbandFrequency / (CLOCK_MHZ*1e6/1024.0) )*( delayAfterEnd - delayAtBegin )/NR_SAMPLES_PER_CHANNEL * double(channel)/NR_CHANNELS; + + // + // Use double precision here, when phi~=0, error in cos() is minimum + // but error in sin() is highest, and will affect most baselines (whose Doppler effect ~=0) + // Note: both X and Y polarizations will have same correction + // so real=cos(phi), imag=sin(phi) correction factor + // phi=phiGradient * blockOffset + const float2 FACTOR=sincos_d2f_select(phi, ri); +#endif + //# const float16 weights = (*weightsData)[channel]; const float weights_s0 = (*weightsData)[channel][0]; const float weights_s1 = (*weightsData)[channel][1]; @@ -183,6 +253,23 @@ __global__ void FIR_filter( void *filteredDataPtr, delayLine_s8, delayLine_s9, delayLine_sA, delayLine_sB, delayLine_sC, delayLine_sD, delayLine_sE, delayLine_sF; +#if defined DOPPLER_CORRECTION + delayLine_s0 = ((*historyData)[subbandIdx][station][0][channel][pol_ri]); + delayLine_s1 = ((*historyData)[subbandIdx][station][1][channel][pol_ri]); + delayLine_s2 = ((*historyData)[subbandIdx][station][2][channel][pol_ri]); + delayLine_s3 = ((*historyData)[subbandIdx][station][3][channel][pol_ri]); + delayLine_s4 = ((*historyData)[subbandIdx][station][4][channel][pol_ri]); + delayLine_s5 = ((*historyData)[subbandIdx][station][5][channel][pol_ri]); + delayLine_s6 = ((*historyData)[subbandIdx][station][6][channel][pol_ri]); + delayLine_s7 = ((*historyData)[subbandIdx][station][7][channel][pol_ri]); + delayLine_s8 = ((*historyData)[subbandIdx][station][8][channel][pol_ri]); + delayLine_s9 = ((*historyData)[subbandIdx][station][9][channel][pol_ri]); + delayLine_sA = ((*historyData)[subbandIdx][station][10][channel][pol_ri]); + delayLine_sB = ((*historyData)[subbandIdx][station][11][channel][pol_ri]); + delayLine_sC = ((*historyData)[subbandIdx][station][12][channel][pol_ri]); + delayLine_sD = ((*historyData)[subbandIdx][station][13][channel][pol_ri]); + delayLine_sE = ((*historyData)[subbandIdx][station][14][channel][pol_ri]); +#else delayLine_s0 = convertIntToFloat((*historyData)[subbandIdx][station][0][channel][pol_ri]); delayLine_s1 = convertIntToFloat((*historyData)[subbandIdx][station][1][channel][pol_ri]); delayLine_s2 = convertIntToFloat((*historyData)[subbandIdx][station][2][channel][pol_ri]); @@ -198,6 +285,7 @@ __global__ void FIR_filter( void *filteredDataPtr, delayLine_sC = convertIntToFloat((*historyData)[subbandIdx][station][12][channel][pol_ri]); delayLine_sD = convertIntToFloat((*historyData)[subbandIdx][station][13][channel][pol_ri]); delayLine_sE = convertIntToFloat((*historyData)[subbandIdx][station][14][channel][pol_ri]); +#endif float sum_s0, sum_s1, sum_s2, sum_s3, sum_s4, sum_s5, sum_s6, sum_s7, @@ -206,9 +294,21 @@ __global__ void FIR_filter( void *filteredDataPtr, for (unsigned time = 0; time < NR_SAMPLES_PER_CHANNEL; time += NR_TAPS) { + +#if defined DOPPLER_CORRECTION + //(X,Y): sample real,imag parts, output a X + b Y + // FACTOR (cos,sin) = (c,s) + // ri=0 : a=cos, b=-sin ; ri=1: a=sin, b=cos + delayLine_sF = REAL(time + 0)*FACTOR.x+IMAG(time + 0)*FACTOR.y; +#else delayLine_sF = convertIntToFloat(SAMPLE(time + 0)); +#endif sum_s0 = weights_sF * delayLine_s0; +#if defined DOPPLER_CORRECTION + delayLine_s0 = REAL(time + 1)*FACTOR.x+IMAG(time + 1)*FACTOR.y; +#else delayLine_s0 = convertIntToFloat(SAMPLE(time + 1)); +#endif sum_s0 += weights_sE * delayLine_s1; sum_s0 += weights_sD * delayLine_s2; sum_s0 += weights_sC * delayLine_s3; @@ -227,7 +327,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 0][channel][ri] = sum_s0; sum_s1 = weights_sF * delayLine_s1; +#if defined DOPPLER_CORRECTION + delayLine_s1 = REAL(time + 2)*FACTOR.x+IMAG(time + 2)*FACTOR.y; +#else delayLine_s1 = convertIntToFloat(SAMPLE(time + 2)); +#endif sum_s1 += weights_sE * delayLine_s2; sum_s1 += weights_sD * delayLine_s3; sum_s1 += weights_sC * delayLine_s4; @@ -246,7 +350,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 1][channel][ri] = sum_s1; sum_s2 = weights_sF * delayLine_s2; +#if defined DOPPLER_CORRECTION + delayLine_s2 = REAL(time + 3)*FACTOR.x+IMAG(time + 3)*FACTOR.y; +#else delayLine_s2 = convertIntToFloat(SAMPLE(time + 3)); +#endif sum_s2 += weights_sE * delayLine_s3; sum_s2 += weights_sD * delayLine_s4; sum_s2 += weights_sC * delayLine_s5; @@ -265,7 +373,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 2][channel][ri] = sum_s2; sum_s3 = weights_sF * delayLine_s3; +#if defined DOPPLER_CORRECTION + delayLine_s3 = REAL(time + 4)*FACTOR.x+IMAG(time + 4)*FACTOR.y; +#else delayLine_s3 = convertIntToFloat(SAMPLE(time + 4)); +#endif sum_s3 += weights_sE * delayLine_s4; sum_s3 += weights_sD * delayLine_s5; sum_s3 += weights_sC * delayLine_s6; @@ -284,7 +396,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 3][channel][ri] = sum_s3; sum_s4 = weights_sF * delayLine_s4; +#if defined DOPPLER_CORRECTION + delayLine_s4 = REAL(time + 5)*FACTOR.x+IMAG(time + 5)*FACTOR.y; +#else delayLine_s4 = convertIntToFloat(SAMPLE(time + 5)); +#endif sum_s4 += weights_sE * delayLine_s5; sum_s4 += weights_sD * delayLine_s6; sum_s4 += weights_sC * delayLine_s7; @@ -303,7 +419,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 4][channel][ri] = sum_s4; sum_s5 = weights_sF * delayLine_s5; +#if defined DOPPLER_CORRECTION + delayLine_s5 = REAL(time + 6)*FACTOR.x+IMAG(time + 6)*FACTOR.y; +#else delayLine_s5 = convertIntToFloat(SAMPLE(time + 6)); +#endif sum_s5 += weights_sE * delayLine_s6; sum_s5 += weights_sD * delayLine_s7; sum_s5 += weights_sC * delayLine_s8; @@ -322,7 +442,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 5][channel][ri] = sum_s5; sum_s6 = weights_sF * delayLine_s6; +#if defined DOPPLER_CORRECTION + delayLine_s6 = REAL(time + 7)*FACTOR.x+IMAG(time + 7)*FACTOR.y; +#else delayLine_s6 = convertIntToFloat(SAMPLE(time + 7)); +#endif sum_s6 += weights_sE * delayLine_s7; sum_s6 += weights_sD * delayLine_s8; sum_s6 += weights_sC * delayLine_s9; @@ -341,7 +465,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 6][channel][ri] = sum_s6; sum_s7 = weights_sF * delayLine_s7; +#if defined DOPPLER_CORRECTION + delayLine_s7 = REAL(time + 8)*FACTOR.x+IMAG(time + 8)*FACTOR.y; +#else delayLine_s7 = convertIntToFloat(SAMPLE(time + 8)); +#endif sum_s7 += weights_sE * delayLine_s8; sum_s7 += weights_sD * delayLine_s9; sum_s7 += weights_sC * delayLine_sA; @@ -360,7 +488,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 7][channel][ri] = sum_s7; sum_s8 = weights_sF * delayLine_s8; +#if defined DOPPLER_CORRECTION + delayLine_s8 = REAL(time + 9)*FACTOR.x+IMAG(time + 9)*FACTOR.y; +#else delayLine_s8 = convertIntToFloat(SAMPLE(time + 9)); +#endif sum_s8 += weights_sE * delayLine_s9; sum_s8 += weights_sD * delayLine_sA; sum_s8 += weights_sC * delayLine_sB; @@ -379,7 +511,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 8][channel][ri] = sum_s8; sum_s9 = weights_sF * delayLine_s9; +#if defined DOPPLER_CORRECTION + delayLine_s9 = REAL(time + 10)*FACTOR.x+IMAG(time + 10)*FACTOR.y; +#else delayLine_s9 = convertIntToFloat(SAMPLE(time + 10)); +#endif sum_s9 += weights_sE * delayLine_sA; sum_s9 += weights_sD * delayLine_sB; sum_s9 += weights_sC * delayLine_sC; @@ -398,7 +534,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 9][channel][ri] = sum_s9; sum_sA = weights_sF * delayLine_sA; +#if defined DOPPLER_CORRECTION + delayLine_sA = REAL(time + 11)*FACTOR.x+IMAG(time + 11)*FACTOR.y; +#else delayLine_sA = convertIntToFloat(SAMPLE(time + 11)); +#endif sum_sA += weights_sE * delayLine_sB; sum_sA += weights_sD * delayLine_sC; sum_sA += weights_sC * delayLine_sD; @@ -417,7 +557,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 10][channel][ri] = sum_sA; sum_sB = weights_sF * delayLine_sB; +#if defined DOPPLER_CORRECTION + delayLine_sB = REAL(time + 12)*FACTOR.x+IMAG(time + 12)*FACTOR.y; +#else delayLine_sB = convertIntToFloat(SAMPLE(time + 12)); +#endif sum_sB += weights_sE * delayLine_sC; sum_sB += weights_sD * delayLine_sD; sum_sB += weights_sC * delayLine_sE; @@ -436,7 +580,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 11][channel][ri] = sum_sB; sum_sC = weights_sF * delayLine_sC; +#if defined DOPPLER_CORRECTION + delayLine_sC = REAL(time + 13)*FACTOR.x+IMAG(time + 13)*FACTOR.y; +#else delayLine_sC = convertIntToFloat(SAMPLE(time + 13)); +#endif sum_sC += weights_sE * delayLine_sD; sum_sC += weights_sD * delayLine_sE; sum_sC += weights_sC * delayLine_sF; @@ -455,7 +603,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 12][channel][ri] = sum_sC; sum_sD = weights_sF * delayLine_sD; +#if defined DOPPLER_CORRECTION + delayLine_sD = REAL(time + 14)*FACTOR.x+IMAG(time + 14)*FACTOR.y; +#else delayLine_sD = convertIntToFloat(SAMPLE(time + 14)); +#endif sum_sD += weights_sE * delayLine_sE; sum_sD += weights_sD * delayLine_sF; sum_sD += weights_sC * delayLine_s0; @@ -474,7 +626,11 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 13][channel][ri] = sum_sD; sum_sE = weights_sF * delayLine_sE; +#if defined DOPPLER_CORRECTION + delayLine_sE = REAL(time + 15)*FACTOR.x+IMAG(time + 15)*FACTOR.y; +#else delayLine_sE = convertIntToFloat(SAMPLE(time + 15)); +#endif sum_sE += weights_sE * delayLine_sF; sum_sE += weights_sD * delayLine_s0; sum_sE += weights_sC * delayLine_s1; @@ -511,10 +667,16 @@ __global__ void FIR_filter( void *filteredDataPtr, (*filteredData)[station][pol][time + 15][channel][ri] = sum_sF; } - for (unsigned time = 0; time < NR_TAPS - 1; time++) + for (unsigned tap= 0; tap < NR_TAPS - 1; tap++) { - (*historyData)[subbandIdx][station][time][channel][pol_ri] = - SAMPLE(NR_SAMPLES_PER_CHANNEL - (NR_TAPS - 1) + time); +#if defined DOPPLER_CORRECTION + const unsigned time = NR_SAMPLES_PER_CHANNEL - (NR_TAPS - 1) + tap; + (*historyData)[subbandIdx][station][tap][channel][pol_ri] = // subbandIdx=1 assumed here + REAL(time)*FACTOR.x+IMAG(time)*FACTOR.y; +#else + (*historyData)[subbandIdx][station][tap][channel][pol_ri] = // subbandIdx=1 assumed here + SAMPLE(NR_SAMPLES_PER_CHANNEL - (NR_TAPS - 1) + tap); +#endif } } } diff --git a/RTCP/Cobalt/GPUProc/src/KernelParameters.cc b/RTCP/Cobalt/GPUProc/src/KernelParameters.cc index 54db7cdf0154d8af21fed77da1bee0b24376cd1e..b0dad98b3d228f4fdbedfc95724cba3f16bd9963 100644 --- a/RTCP/Cobalt/GPUProc/src/KernelParameters.cc +++ b/RTCP/Cobalt/GPUProc/src/KernelParameters.cc @@ -34,7 +34,8 @@ namespace LOFAR nrBitsPerSample(obsSettings.nrBitsPerSample), blockSize(obsSettings.blockSize), subbandWidth(obsSettings.subbandWidth()), - subbands(obsSettings.subbands) + subbands(obsSettings.subbands), + clockMHz(obsSettings.clockMHz) { ASSERT(obsSettings.antennaFieldNames.size() == obsSettings.antennaFields.size()); } @@ -69,4 +70,4 @@ namespace LOFAR } } // end namespace Cobalt -} // end namespace LOFAR \ No newline at end of file +} // end namespace LOFAR diff --git a/RTCP/Cobalt/GPUProc/src/KernelParameters.h b/RTCP/Cobalt/GPUProc/src/KernelParameters.h index e6045d8625069592456f8953e1818fd0b938764c..b9636c4605a8f6e70e4cfda5ac05dfd6c85f6641 100644 --- a/RTCP/Cobalt/GPUProc/src/KernelParameters.h +++ b/RTCP/Cobalt/GPUProc/src/KernelParameters.h @@ -54,6 +54,7 @@ namespace LOFAR unsigned blockSize; double subbandWidth; std::vector<ObservationSettings::Subband> subbands; + unsigned clockMHz; }; Observation observation; @@ -120,4 +121,4 @@ namespace LOFAR } // end namespace Cobalt } // end namespace LOFAR -#endif \ No newline at end of file +#endif diff --git a/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.cc b/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.cc index 3ad35b6fdb9789810664c95a0c8763ebc587fd4e..730e54e45ddb1025e31c1fa8d2317168e65bb18e 100644 --- a/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.cc +++ b/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.cc @@ -51,12 +51,14 @@ namespace LOFAR unsigned nrBitsPerSample_, unsigned nrChannels_, unsigned nrSamplesPerChannel_, + unsigned clockMHz_, double subbandBandwidth_, unsigned nrSAPs_, bool correlator_, bool delayCompensation_, bool correctBandPass_, bool transpose_, + bool dopplerCorrection_, bool dumpBuffers_, std::string dumpFilePattern_) : Kernel::Parameters(correlator_ ? "delayAndBandPass" : "delayCompensation"), @@ -66,11 +68,13 @@ namespace LOFAR nrBitsPerSample(nrBitsPerSample_), nrChannels(nrChannels_), nrSamplesPerChannel(nrSamplesPerChannel_), + clockMHz(clockMHz_), subbandBandwidth(subbandBandwidth_), nrSAPs(nrSAPs_), delayCompensation(delayCompensation_), correctBandPass(correctBandPass_), - transpose(transpose_) + transpose(transpose_), + dopplerCorrection(dopplerCorrection_) { if (correlator_) { // Use identity mappnig for station indices @@ -110,7 +114,7 @@ namespace LOFAR delayIndices.size() * sizeof delayIndices[0]; case DelayAndBandPassKernel::DELAYS: return - (size_t) nrSAPs * nrDelays * + (size_t) nrSAPs * nrDelays * NR_POLARIZATIONS * sizeof(double); case DelayAndBandPassKernel::PHASE_ZEROS: return @@ -225,6 +229,11 @@ namespace LOFAR if (itsParameters.transpose) defs["DO_TRANSPOSE"] = "1"; + if (itsParameters.dopplerCorrection) { + defs["DOPPLER_CORRECTION"] = "1"; + defs["CLOCK_MHZ"] = lexical_cast<string>(itsParameters.clockMHz); + } + return defs; } } diff --git a/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.h b/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.h index 214e5723bf8ca556acd3d81dd269d0109c7f2d62..b37693bd27234c5bde854afe50b80b9d98c5bacf 100644 --- a/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.h +++ b/RTCP/Cobalt/GPUProc/src/Kernels/DelayAndBandPassKernel.h @@ -62,12 +62,14 @@ namespace LOFAR unsigned nrBitsPerSample, unsigned nrChannels, unsigned nrSamplesPerChannel, + unsigned clockMHz, double subbandBandwidth, unsigned nrSAPs, bool correlator, bool delayCompensation, bool correctBandPass, bool transpose, + bool dopplerCorrection, bool dumpBuffers = false, std::string dumpFilePattern = ""); @@ -78,6 +80,9 @@ namespace LOFAR unsigned nrChannels; unsigned nrSamplesPerChannel; + // Clock freq used to calculate input samplie freq=clockMHz/1024 MHz + // for Doppler correction + unsigned clockMHz; double subbandBandwidth; unsigned nrSAPs; @@ -85,6 +90,10 @@ namespace LOFAR bool delayCompensation; bool correctBandPass; bool transpose; + // if true, + // Doppler correction has ALREADY been applied in the FIR_Filter, + // so only incremental DelayCompensation and BandPass correction is done + bool dopplerCorrection; unsigned nrSamplesPerSubband() const; unsigned nrBytesPerComplexSample() const; diff --git a/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.cc b/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.cc index 9e3f153f4b4628643fc14b2d9bd10f2db39afb06..4d4e9dacdd10ca7bc965a6947e8c22739a7b86eb 100644 --- a/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.cc +++ b/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.cc @@ -47,9 +47,11 @@ namespace LOFAR unsigned nrSTABs, unsigned nrBitsPerSample, bool inputIsStationData, + bool dopplerCorrection, unsigned nrSubbands, unsigned nrChannels, unsigned nrSamplesPerChannel, + unsigned clockMHz, float scaleFactor, const std::string &name, const bool dumpBuffers_, @@ -62,9 +64,12 @@ namespace LOFAR nrSamplesPerChannel(nrSamplesPerChannel), nrSubbands(nrSubbands), + clockMHz(clockMHz), scaleFactor(scaleFactor), - inputIsStationData(inputIsStationData) + inputIsStationData(inputIsStationData), + dopplerCorrection(dopplerCorrection) { + ASSERTSTR(dopplerCorrection?inputIsStationData:true,"Doppler correction only works if inputIsStationData=true"); dumpBuffers = dumpBuffers_; dumpFilePattern = dumpFilePattern_; } @@ -106,10 +111,16 @@ namespace LOFAR sizeof(float); case FIR_FilterKernel::HISTORY_DATA: // History is split over 2 bytes in 4-bit mode, to avoid unnecessary packing/unpacking + // If Doppler corr. enabled, history is a float buffer return (size_t) nrSubbands * nrHistorySamples() * nrSTABs * - NR_POLARIZATIONS * (nrBitsPerSample == 4 ? 2U : nrBytesPerComplexSample()); + NR_POLARIZATIONS * (dopplerCorrection? sizeof(std::complex<float>) + : (nrBitsPerSample == 4 ? 2U : nrBytesPerComplexSample())); + case FIR_FilterKernel::DELAYS: + return (dopplerCorrection? + (size_t) 1 * nrSTABs * // nrSAPs=1 here + NR_POLARIZATIONS * sizeof(double) : 0); default: THROW(GPUProcException, "Invalid bufferType (" << bufferType << ")"); } @@ -124,12 +135,16 @@ namespace LOFAR h_filterWeights(stream.getContext(), params.bufferSize(FILTER_WEIGHTS)), d_filterWeights(stream.getContext(), params.bufferSize(FILTER_WEIGHTS)), historySamples(stream.getContext(), params.bufferSize(HISTORY_DATA)), - historyFlags(boost::extents[params.nrSubbands][params.nrSTABs]) + historyFlags(boost::extents[params.nrSubbands][params.nrSTABs]), + delaysAtBegin(stream.getContext(), params.bufferSize(DELAYS)), + delaysAfterEnd(stream.getContext(), params.bufferSize(DELAYS)) { setArg(0, buffers.output); setArg(1, buffers.input); setArg(2, d_filterWeights); setArg(3, historySamples); + setArg(4, delaysAtBegin); + setArg(5, delaysAfterEnd); unsigned totalNrThreads = params.nrChannels * NR_POLARIZATIONS * 2; unsigned nrPasses = ceilDiv(totalNrThreads, maxThreadsPerBlock); @@ -173,9 +188,10 @@ namespace LOFAR } void FIR_FilterKernel::enqueue(const BlockID &blockId, - unsigned subbandIdx) + unsigned subbandIdx, double subbandFrequency) { - setArg(4, subbandIdx); + setArg(6, subbandIdx); + setArg(7, subbandFrequency); Kernel::enqueue(blockId); } @@ -222,6 +238,11 @@ namespace LOFAR if (itsParameters.inputIsStationData) defs["INPUT_IS_STATIONDATA"] = "1"; + if (itsParameters.dopplerCorrection) { + defs["DOPPLER_CORRECTION"] = "1"; + defs["CLOCK_MHZ"] = lexical_cast<string>(itsParameters.clockMHz); + } + return defs; } } diff --git a/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.h b/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.h index e57b4527c48b328146c8f1c25a254a5292df8e73..7ab2d9499a8e703eef004c68cccd51b5fad5b5ef 100644 --- a/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.h +++ b/RTCP/Cobalt/GPUProc/src/Kernels/FIR_FilterKernel.h @@ -44,7 +44,8 @@ namespace LOFAR INPUT_DATA, OUTPUT_DATA, FILTER_WEIGHTS, - HISTORY_DATA + HISTORY_DATA, + DELAYS }; // Parameters that must be passed to the constructor of the @@ -55,9 +56,11 @@ namespace LOFAR unsigned nrSTABs, unsigned nrBitsPerSample, bool inputIsStationData, + bool dopplerCorrection, unsigned nrSubbands, unsigned nrChannels, unsigned nrSamplesPerChannel, + unsigned clockMHz, float scaleFactor, const std::string &name = "FIR", const bool dumpBuffers = false, @@ -85,6 +88,10 @@ namespace LOFAR // The number of history samples used for each block unsigned nrHistorySamples() const; + // Clock freq used to calculate input samplie freq=clockMHz/1024 MHz + // for Doppler correction + unsigned clockMHz; + // Additional scale factor (e.g. for FFT normalization). // Derived differently from nrChannelsPerSubband for correlation // and beamforming, so must be passed into this class. @@ -97,6 +104,10 @@ namespace LOFAR // pipeline: float[stab][pol][sample] bool inputIsStationData; + // if true, + // enable Doppler correction + bool dopplerCorrection; + size_t bufferSize(FIR_FilterKernel::BufferType bufferType) const; }; @@ -106,7 +117,8 @@ namespace LOFAR const Parameters& param); void enqueue(const BlockID &blockId, - unsigned subbandIdx); + unsigned subbandIdx, + double subbandFrequency=0.0); // needed for Doppler corr. // Put the historyFlags[subbandIdx] in front of the given inputFlags, // and update historyFlags[subbandIdx] with the flags of the last samples @@ -128,6 +140,10 @@ namespace LOFAR // // Dimensions: [nrSubbands][nrStations] MultiDimArray<SparseSet<unsigned>, 2> historyFlags; + + public: + // Delay compensation constants to be written by the caller before enqueue() + gpu::DeviceMemory delaysAtBegin, delaysAfterEnd; }; //# -------- Template specializations for KernelFactory -------- #// diff --git a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerCoherentStep.cc b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerCoherentStep.cc index 47923639a7fd3d7bd355b6f79d4e2b1a6b205d21..87c335bbac416b0020650e0e13890f22f24ec501 100644 --- a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerCoherentStep.cc +++ b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerCoherentStep.cc @@ -88,9 +88,11 @@ namespace LOFAR bfParameters.maxNrCoherentTABsPerSAP, obsParameters.nrBitsPerSample, false, // inputIsStationData + false, // dopplerCorrection nrSubbandsPerSubbandProc, bfParameters.coherentSettings.nrChannels, obsParameters.blockSize / bfParameters.coherentSettings.nrChannels, + obsParameters.clockMHz, static_cast<float>(bfParameters.coherentSettings.nrChannels), "FIR (coherent, final)", cobParameters.kernel.dumpFIR_FilterKernel, diff --git a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerIncoherentStep.cc b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerIncoherentStep.cc index bbc2a73fd3b29436f0055feb2af3a6de5c49c3f5..c03d6fa656f73ba6fd2695cce93295fd3a5d36e4 100644 --- a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerIncoherentStep.cc +++ b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerIncoherentStep.cc @@ -74,10 +74,12 @@ namespace LOFAR ? new KernelFactory<FIR_FilterKernel>(FIR_FilterKernel::Parameters( bfParameters.preStationIndices.size(), obsParameters.nrBitsPerSample, - false, + false, // inputIsStationData + false, // dopplerCorrection nrSubbandsPerSubbandProc, bfParameters.incoherentSettings.nrChannels, obsParameters.blockSize / bfParameters.incoherentSettings.nrChannels, + obsParameters.clockMHz, static_cast<float>(bfParameters.incoherentSettings.nrChannels), "FIR (incoherent, final)")) : NULL), diff --git a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerPreprocessingStep.cc b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerPreprocessingStep.cc index 51d7922d12c18ffaf550aad8dd8afe31694bf8f8..cdb3080efabc52f2447126dbe4a3342a05723568 100644 --- a/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerPreprocessingStep.cc +++ b/RTCP/Cobalt/GPUProc/src/SubbandProcs/BeamFormerPreprocessingStep.cc @@ -84,12 +84,14 @@ namespace LOFAR obsParameters.nrBitsPerSample, preParameters.nrDelayCompensationChannels, obsParameters.blockSize / preParameters.nrDelayCompensationChannels, + obsParameters.clockMHz, //not needed in beamformer pipeline obsParameters.subbandWidth, obsParameters.nrSAPs, false, // correlator preParameters.delayCompensationEnabled, - false , // correctBandPass + false, // correctBandPass false, // transpose + false, // dopplerCorrection cobParameters.kernel.dumpDelayAndBandPassKernel, str(boost::format("L%d_SB%%03d_BL%%03d_BFPre_DelayAndBandPassKernel_%c%c%c.dat") % obsParameters.observationID % diff --git a/RTCP/Cobalt/GPUProc/src/SubbandProcs/CorrelatorStep.cc b/RTCP/Cobalt/GPUProc/src/SubbandProcs/CorrelatorStep.cc index 038deb9dc8b2841050d5a7552f10a4423ce45f91..f4ffbffcca420ad705cf625fc5982484e7801820 100644 --- a/RTCP/Cobalt/GPUProc/src/SubbandProcs/CorrelatorStep.cc +++ b/RTCP/Cobalt/GPUProc/src/SubbandProcs/CorrelatorStep.cc @@ -55,10 +55,11 @@ namespace LOFAR obsParameters.nrStations, obsParameters.nrBitsPerSample, true, // inputIsStationData + corParameters.dopplerCorrection, // DopplerCorrection nrSubbandsPerSubbandProc, corParameters.nrChannels, obsParameters.blockSize / corParameters.nrChannels, - + obsParameters.clockMHz, // Scale to always output visibilities or stokes with the same flux scale. // With the same bandwidth, twice the (narrower) channels _average_ (not // sum) to the same fluxes (and same noise). Twice the channels (twice the @@ -97,12 +98,14 @@ namespace LOFAR obsParameters.nrBitsPerSample, corParameters.nrChannels, obsParameters.blockSize / corParameters.nrChannels, + obsParameters.clockMHz, obsParameters.subbandWidth, obsParameters.nrSAPs, - preParameters.delayCompensationEnabled, true, // correlator + preParameters.delayCompensationEnabled, preParameters.bandPassCorrectionEnabled, true, // transpose + corParameters.dopplerCorrection, // DopplerCorrection cobParameters.kernel.dumpDelayAndBandPassKernel, str(boost::format("L%d_SB%%03d_BL%%03d_Cor_DelayAndBandPassKernel_%c%c%c.dat") % obsParameters.observationID % @@ -348,6 +351,13 @@ namespace LOFAR { htodStream->waitEvent(executeFinished); + if (correlatorPPF && corParameters.dopplerCorrection) { // check nrChannels>1 for Doppler corr. + htodStream->writeBuffer(firFilterKernel->delaysAtBegin, + input.delaysAtBegin, false); + htodStream->writeBuffer(firFilterKernel->delaysAfterEnd, + input.delaysAfterEnd, false); + } + if (preParameters.delayCompensationEnabled) { htodStream->writeBuffer(delayAndBandPassKernel->delaysAtBegin, input.delaysAtBegin, false); @@ -368,7 +378,8 @@ namespace LOFAR if (correlatorPPF) { // The subbandIdx immediate kernel arg must outlive kernel runs. firFilterKernel->enqueue(input.blockID, - input.blockID.subbandProcSubbandIdx); + input.blockID.subbandProcSubbandIdx, + obsParameters.subbands[input.blockID.globalSubbandIdx].centralFrequency); fftKernel->enqueue(input.blockID); // Process flags enough to determine which data to zero diff --git a/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel.cc b/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel.cc index a66c5d83185810fe627d0cca697fe1d74331e94f..2f14c7385f7f3773c83a551234ef85d04093a78e 100644 --- a/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel.cc +++ b/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel.cc @@ -67,12 +67,14 @@ int main(int argc, char *argv[]) ps.settings.nrBitsPerSample, ps.settings.beamFormer.nrDelayCompensationChannels, ps.settings.blockSize / ps.settings.beamFormer.nrDelayCompensationChannels, + ps.settings.clockMHz, ps.settings.subbandWidth(), ps.settings.SAPs.size(), ps.settings.delayCompensation.enabled, correlator, false, // correctBandPass - false // transpose + false, // transpose + false // dopplerCorrection )); gpu::DeviceMemory diff --git a/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel2.cc b/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel2.cc index 6f5445d23f808feb3a85117dd2db12e528d457a5..dae560faf4aaff0b20f11adcb6e484fcd50699b6 100644 --- a/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel2.cc +++ b/RTCP/Cobalt/GPUProc/test/Kernels/tDelayAndBandPassKernel2.cc @@ -37,12 +37,14 @@ struct TestFixture ps.settings.nrBitsPerSample, ps.settings.correlator.nrChannels, ps.settings.blockSize / ps.settings.correlator.nrChannels, + ps.settings.clockMHz, ps.settings.subbandWidth(), ps.settings.SAPs.size(), ps.settings.delayCompensation.enabled, true, // correlator ps.settings.corrections.bandPass, // correctBandPass - true // transpose + true, // transpose + false // dopplerCorrection )) {} ~TestFixture() {} diff --git a/RTCP/Cobalt/GPUProc/test/Kernels/tFIR_FilterKernel.cc b/RTCP/Cobalt/GPUProc/test/Kernels/tFIR_FilterKernel.cc index 2ce8f9ffc4c9ac071a43e26b1a57a506dc7a8936..8bf6165cdee6c682777a207b39af061638761f8f 100644 --- a/RTCP/Cobalt/GPUProc/test/Kernels/tFIR_FilterKernel.cc +++ b/RTCP/Cobalt/GPUProc/test/Kernels/tFIR_FilterKernel.cc @@ -22,6 +22,7 @@ #include <lofar_config.h> #include <GPUProc/Kernels/FIR_FilterKernel.h> +#include <GPUProc/MultiDimArrayHostBuffer.h> #include <CoInterface/Parset.h> #include <Common/lofar_complex.h> @@ -36,79 +37,196 @@ using namespace std; TEST(FIR_FilterKernel) { - Parset ps; - ps.add("Observation.nrBitsPerSample", "8"); - ps.add("Observation.VirtualInstrument.stationList", "[RS000]"); - ps.add("Observation.antennaSet", "LBA_INNER"); - ps.add("Observation.Dataslots.RS000LBA.RSPBoardList", "[0]"); - ps.add("Observation.Dataslots.RS000LBA.DataslotList", "[0]"); - ps.add("Observation.nrBeams", "1"); - ps.add("Observation.Beam[0].subbandList", "[0]"); - ps.add("OLAP.CNProc.integrationSteps", "128"); - ps.add("Cobalt.Correlator.nrChannelsPerSubband", "64"); - ps.add("Observation.DataProducts.Output_Correlated.enabled", "true"); - ps.add("Observation.DataProducts.Output_Correlated.filenames", "[L12345_SAP000_SB000_uv.MS]"); - ps.add("Observation.DataProducts.Output_Correlated.locations", "[localhost:.]"); - ps.updateSettings(); - FIR_FilterKernel::Parameters params( - ps.settings.antennaFields.size(), - ps.settings.nrBitsPerSample, - true, - 1, - ps.settings.correlator.nrChannels, - ps.settings.blockSize / ps.settings.correlator.nrChannels, - 1.0f - ); + // How we test: + // 1 : run the kernel in the normal way, without doppler correction. save the output + // 2 : re-run the kernel with doppler correction, but the delays =0, so effectively no correction, save the output + // 3 : re-run the kernel with non-zero delays, so the output should be affected by a phase ramp + // compare outputs for 1 and 2 above, and output ratios for 1 and 3 above, + // ratio of outputs for 1 and 3 above should give us back the applied correction + + // some constants (not in the parset) + const size_t NR_SAPS=1; + const size_t NR_POLARIZATIONS=2; + const size_t COMPLEX=2; + const double subbandFreq=50e6; + const double CLOCK_MHZ=200.0; + + Parset ps; + ps.add("Observation.nrBitsPerSample", "8"); + ps.add("Observation.VirtualInstrument.stationList", "[RS000]"); + ps.add("Observation.antennaSet", "LBA_INNER"); + ps.add("Observation.Dataslots.RS000LBA.RSPBoardList", "[0]"); + ps.add("Observation.Dataslots.RS000LBA.DataslotList", "[0]"); + ps.add("Observation.nrBeams", "1"); + ps.add("Observation.Beam[0].subbandList", "[0]"); + ps.add("OLAP.CNProc.integrationSteps", "128"); + ps.add("Cobalt.Correlator.nrChannelsPerSubband", "64"); + ps.add("Observation.DataProducts.Output_Correlated.enabled", "true"); + ps.add("Observation.DataProducts.Output_Correlated.filenames", "[L12345_SAP000_SB000_uv.MS]"); + ps.add("Observation.DataProducts.Output_Correlated.locations", "[localhost:.]"); + ps.updateSettings(); + + //************************ Test 1 (without Doppler correction) + FIR_FilterKernel::Parameters params( + ps.settings.antennaFields.size(), + ps.settings.nrBitsPerSample, + true, + ps.settings.correlator.dopplerCorrection, + 1, + ps.settings.correlator.nrChannels, + ps.settings.blockSize / ps.settings.correlator.nrChannels, + ps.settings.clockMHz, + 1.0f + ); + + KernelFactory<FIR_FilterKernel> factory(params); + + gpu::Device device(gpu::Platform().devices()[0]); + gpu::Context context(device); + gpu::Stream stream(context); + + gpu::DeviceMemory + dInput(context, factory.bufferSize(FIR_FilterKernel::INPUT_DATA)), + dOutput(context, factory.bufferSize(FIR_FilterKernel::OUTPUT_DATA)), + dCoeff(context, factory.bufferSize(FIR_FilterKernel::FILTER_WEIGHTS)), + dHistory(context, factory.bufferSize(FIR_FilterKernel::HISTORY_DATA)); + + const size_t NR_SAMPLES_PER_CHANNEL=ps.settings.blockSize/ps.settings.correlator.nrChannels; + const size_t NR_CHANNELS=ps.settings.correlator.nrChannels; + MultiDimArrayHostBuffer<signed char, 5> hInput(boost::extents + [ps.settings.antennaFields.size()] //NR_STATIONS + [NR_SAMPLES_PER_CHANNEL] + [NR_CHANNELS] + [NR_POLARIZATIONS] + [COMPLEX], + context); + MultiDimArrayHostBuffer<float, 5> hOutput(boost::extents + [ps.settings.antennaFields.size()] //NR_STATIONS + [NR_POLARIZATIONS] + [NR_SAMPLES_PER_CHANNEL] + [NR_CHANNELS] + [COMPLEX], + context); + + + // Create a recognizable input pattern +#pragma omp parallel for + for(size_t i = 0; i < NR_SAMPLES_PER_CHANNEL; ++i) { + hInput[0][i][32][0][0]=1; + hInput[0][i][32][0][1]=-1; + hInput[0][i][32][1][0]=2; + hInput[0][i][32][1][1]=-12; + } + //Doppler phase expected (with channel): + //phi = 2.0 * M_PI * (subbandFrequency / (CLOCK_MHZ*1e6/1024.0) )*( delayAfterEnd - delayAtBegin )/NR_SAMPLES_PER_CHANNEL * double(channel)/NR_CHANNELS; + //in order to test this, also add a pattern across channels +#pragma omp parallel for + for(size_t i = 0; i < NR_CHANNELS; ++i) { + // fill with stride so convolution becoms a scaling + hInput[0][NR_SAMPLES_PER_CHANNEL/2][i][0][0]=1; + hInput[0][NR_SAMPLES_PER_CHANNEL/2][i][0][1]=-1; + hInput[0][NR_SAMPLES_PER_CHANNEL/2][i][1][0]=2; + hInput[0][NR_SAMPLES_PER_CHANNEL/2][i][1][1]=-12; + } + + stream.writeBuffer(dInput, hInput); + + // initialize history data : not really needed here + // because it is done in the construcor + dHistory.set(0); + + unique_ptr<FIR_FilterKernel> kernel(factory.create(stream, dInput, dOutput)); + BlockID blockId; + kernel->enqueue(blockId, 0); + stream.readBuffer(hOutput, dOutput,true); + + //************************ Test 2: with Doppler correction + // + ps.replace("Cobalt.Correlator.dopplerCorrection","true"); + ps.updateSettings(); + + FIR_FilterKernel::Parameters params_dop( + ps.settings.antennaFields.size(), + ps.settings.nrBitsPerSample, + true, + ps.settings.correlator.dopplerCorrection, + 1, + ps.settings.correlator.nrChannels, + ps.settings.blockSize / ps.settings.correlator.nrChannels, + ps.settings.clockMHz, + 1.0f + ); + + KernelFactory<FIR_FilterKernel> factory_dop(params_dop); + + MultiDimArrayHostBuffer<double, 3> delaysAtBegin(boost::extents + [NR_SAPS] + [ps.settings.antennaFields.size()] //NR_DELAYS + [NR_POLARIZATIONS], + context); + MultiDimArrayHostBuffer<double, 3> delaysAfterEnd(boost::extents + [NR_SAPS] + [ps.settings.antennaFields.size()] //NR_DELAYS + [NR_POLARIZATIONS], + context); + MultiDimArrayHostBuffer<float, 5> hOutput1(boost::extents + [ps.settings.antennaFields.size()] //NR_STATIONS + [NR_POLARIZATIONS] + [NR_SAMPLES_PER_CHANNEL] + [NR_CHANNELS] + [COMPLEX], + context); + + + CHECK_EQUAL(delaysAtBegin.size(),factory_dop.bufferSize(FIR_FilterKernel::DELAYS)); + CHECK_EQUAL(hInput.size(),factory_dop.bufferSize(FIR_FilterKernel::INPUT_DATA)); + CHECK_EQUAL(hOutput1.size(),factory_dop.bufferSize(FIR_FilterKernel::OUTPUT_DATA)); + const double delayBegin=1.3e-2; + const double delayEnd=34.0e-2; + for (size_t i = 0; i < delaysAtBegin.num_elements(); i++) { + delaysAtBegin.origin()[i] = delayBegin; + } + for (size_t i = 0; i < delaysAfterEnd.num_elements(); i++) { + delaysAfterEnd.origin()[i] = delayEnd; + } + unique_ptr<FIR_FilterKernel> kernel_dop_zero(factory_dop.create(stream, dInput, dOutput)); + // Note: delays are zero + kernel_dop_zero->enqueue(blockId, 0, subbandFreq); + stream.readBuffer(hOutput1, dOutput,true); + // compare results (for a fraction of the output, to save time) + for(size_t i = NR_SAMPLES_PER_CHANNEL/2; i < (NR_SAMPLES_PER_CHANNEL*3)/4; ++i) { + CHECK_CLOSE(hOutput[0][0][i][32][0],hOutput1[0][0][i][32][0],0.00000001); + CHECK_CLOSE(hOutput[0][0][i][32][1],hOutput1[0][0][i][32][1],0.00000001); + CHECK_CLOSE(hOutput[0][1][i][32][0],hOutput1[0][1][i][32][0],0.00000001); + CHECK_CLOSE(hOutput[0][1][i][32][1],hOutput1[0][1][i][32][1],0.00000001); + } + + + // recreate a kernel because we have to start with fresh History data + unique_ptr<FIR_FilterKernel> kernel_dop(factory_dop.create(stream, dInput, dOutput)); + // Copy non-zero delays + stream.writeBuffer(kernel_dop->delaysAtBegin, delaysAtBegin, true); + stream.writeBuffer(kernel_dop->delaysAfterEnd, delaysAfterEnd, true); + kernel_dop->enqueue(blockId, 0, subbandFreq); + stream.readBuffer(hOutput1, dOutput,true); + // compare the result for a subset of channels, to save time + for(size_t i = NR_CHANNELS/4; i < NR_CHANNELS/2; ++i) { + double phiX= atan2(hOutput1[0][0][NR_SAMPLES_PER_CHANNEL/2][i][1], + hOutput1[0][0][NR_SAMPLES_PER_CHANNEL/2][i][0]) + - atan2(hOutput[0][0][NR_SAMPLES_PER_CHANNEL/2][i][1], + hOutput[0][0][NR_SAMPLES_PER_CHANNEL/2][i][0]); + double phiY= atan2(hOutput1[0][1][NR_SAMPLES_PER_CHANNEL/2][i][1], + hOutput1[0][1][NR_SAMPLES_PER_CHANNEL/2][i][0]) + - atan2(hOutput[0][1][NR_SAMPLES_PER_CHANNEL/2][i][1], + hOutput[0][1][NR_SAMPLES_PER_CHANNEL/2][i][0]); + + double phiRef = 2.0 * M_PI * (subbandFreq/ (CLOCK_MHZ*1e6/1024.0) )*( delayEnd - delayBegin )/NR_SAMPLES_PER_CHANNEL * double(i)/NR_CHANNELS; + + CHECK_CLOSE(phiX,phiRef,0.0001); + CHECK_CLOSE(phiY,phiRef,0.0001); + } - KernelFactory<FIR_FilterKernel> factory(params); - - gpu::Device device(gpu::Platform().devices()[0]); - gpu::Context context(device); - gpu::Stream stream(context); - - gpu::DeviceMemory - dInput(context, factory.bufferSize(FIR_FilterKernel::INPUT_DATA)), - dOutput(context, factory.bufferSize(FIR_FilterKernel::OUTPUT_DATA)), - dCoeff(context, factory.bufferSize(FIR_FilterKernel::FILTER_WEIGHTS)), - dHistory(context, factory.bufferSize(FIR_FilterKernel::HISTORY_DATA)); - - gpu::HostMemory - hInput(context, dInput.size()), - hOutput(context, dOutput.size()); - - cout << "dInput.size() = " << dInput.size() << endl; - cout << "dOutput.size() = " << dOutput.size() << endl; - - // hInput.get<i8complex>()[2176] = i8complex(1,0); - - i8complex* ibuf = hInput.get<i8complex>(); - for(size_t i = 1922; i < 1923; ++i) { - ibuf[i] = i8complex(1,0); - } - - stream.writeBuffer(dInput, hInput); - - // initialize history data - dHistory.set(0); - - unique_ptr<FIR_FilterKernel> kernel(factory.create(stream, dInput, dOutput)); - BlockID blockId; - kernel->enqueue(blockId, 0); - - stream.readBuffer(hOutput, dOutput); - - /* Comment out printing of this information: it disrupts the logfile and add no information. - float* buf = hOutput.get<float>(); - for(size_t i = 0; i < hOutput.size() / sizeof(float); ++i) { - cout << "out[" << i << "] = " << buf[i] << endl; - } - - buf = hCoeff.get<float>(); - for(size_t i = 0; i < hCoeff.size() / sizeof(float); ++i) { - cout << "coeff[" << i << "] = " << buf[i] << endl; - } - */ } TEST(HistoryFlags) @@ -136,9 +254,11 @@ TEST(HistoryFlags) ps.settings.antennaFields.size(), ps.settings.nrBitsPerSample, true, + false, // doDopplerCorrection 1, ps.settings.correlator.nrChannels, ps.settings.blockSize / ps.settings.correlator.nrChannels, + 200, // clockMHz 1.0f ); @@ -224,6 +344,4 @@ int main() cerr << "No GPU device(s) found. Skipping tests." << endl; return 3; } - } - diff --git a/RTCP/Cobalt/GPUProc/test/Kernels/tKernelFunctions.cc b/RTCP/Cobalt/GPUProc/test/Kernels/tKernelFunctions.cc index 37c1a8f62c283ef5f7b3ac8cda59eee14c3b579e..3b677de9bdbcc833fd207b2f16f189957569cd85 100644 --- a/RTCP/Cobalt/GPUProc/test/Kernels/tKernelFunctions.cc +++ b/RTCP/Cobalt/GPUProc/test/Kernels/tKernelFunctions.cc @@ -57,9 +57,11 @@ TEST(tKernelFunctions) ps.settings.antennaFields.size(), ps.settings.nrBitsPerSample, true, + false, // doDopplerCorrection 1, ps.settings.correlator.nrChannels, ps.settings.blockSize / ps.settings.correlator.nrChannels, + 200, // clockMHz 1.0f); KernelFactory<FIR_FilterKernel> factory(params); diff --git a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tCorrelatorSubbandProcProcessSb.cc b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tCorrelatorSubbandProcProcessSb.cc index fdaf16820fbeb729974c1e91dae43a4088ccca3f..d2db426ac976d80dcdf751358a8bb7ac6d010982 100644 --- a/RTCP/Cobalt/GPUProc/test/SubbandProcs/tCorrelatorSubbandProcProcessSb.cc +++ b/RTCP/Cobalt/GPUProc/test/SubbandProcs/tCorrelatorSubbandProcProcessSb.cc @@ -299,6 +299,25 @@ TEST(weights_flags_64ch) { } } + +TEST(doppler_corection) { + // Override nr channels to 64 + Parset ps("tCorrelatorSubbandProcProcessSb.parset"); + ps.replace("Cobalt.Correlator.nrChannelsPerSubband", "64"); + ps.replace("Cobalt.Correlator.dopplerCorrection","true"); + ps.replace("Cobalt.delayCompensation","true"); + ps.replace("Cobalt.correctBandpass","true"); + ps.updateSettings(); + SubbandProcWrapper wrapper(ps); + + // process + wrapper.process(); + + // Only checking execution for the moment + // no output verification +} + + int main() { INIT_LOGGER("tCorrelatorSubbandProcProcessSb"); diff --git a/RTCP/Cobalt/GPUProc/test/cuda/tFIR_Filter.cc b/RTCP/Cobalt/GPUProc/test/cuda/tFIR_Filter.cc index 1fef12bbc16442253e56bba63e52525bc420d407..550da33ada1334ac0da9c26c6647b70c260cad59 100644 --- a/RTCP/Cobalt/GPUProc/test/cuda/tFIR_Filter.cc +++ b/RTCP/Cobalt/GPUProc/test/cuda/tFIR_Filter.cc @@ -127,6 +127,9 @@ int test() DeviceMemory devSampledData(ctx, sizeSampledData * sizeof(signed char)); DeviceMemory devFirWeights(ctx, sizeWeightsData * sizeof(float)); DeviceMemory devHistoryData(ctx, sizeHistoryData * sizeof(signed char)); + // Empty data for Doppler correction + DeviceMemory devDelaysAtBegin(ctx, 0); + DeviceMemory devDelaysAfterEnd(ctx, 0); unsigned station, sample, ch, pol; @@ -188,13 +191,20 @@ int test() stream.writeBuffer(devFirWeights, rawFirWeights, true); stream.writeBuffer(devHistoryData, rawHistoryData, true); + unsigned subbandIdx = 0; + double subbandFrequency=0.0; // Not used unless Doppler corr. enabled + // Run the kernel on the created data hKernel.setArg(0, devFilteredData); hKernel.setArg(1, devSampledData); hKernel.setArg(2, devFirWeights); hKernel.setArg(3, devHistoryData); - unsigned subbandIdx = 0; - hKernel.setArg(4, subbandIdx); + // Just pass empty buffers for the following two + hKernel.setArg(4, devDelaysAtBegin); + hKernel.setArg(5, devDelaysAfterEnd); + // standard values + hKernel.setArg(6, subbandIdx); + hKernel.setArg(7, subbandFrequency); // Run the kernel stream.synchronize(); diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/parset.py b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/parset.py index 5714cc07f5648cc64a60ede4350a024e9d34edf8..e52499669aeb153f8243893e81d8b900f8b98161 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/parset.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/parset.py @@ -60,6 +60,17 @@ def _stokes_settings_parset_subkeys(stokes_spec: dict) -> dict: return parset +def _dataproduct_parset_subkeys(subtask: models.Subtask, dataproducts: list) -> dict: + """ Return a subset of parset keys and values to list dataproducts. """ + + parset = {} + parset["enabled"] = len(dataproducts) > 0 + parset["filenames"] = [dp.filename for dp in dataproducts] + parset["skip"] = [0] * len(dataproducts) + parset["locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in dataproducts] + + return parset + def _sap_index(saps: dict, sap_name: str) -> int: """ Return the SAP index in the observation given a certain SAP name. """ @@ -80,17 +91,14 @@ def _convert_correlator_settings_to_parset_dict(subtask: models.Subtask, spec: d digi_beams = spec['stations']['digital_pointings'] parset = {} - parset["Observation.DataProducts.Output_Correlated.enabled"] = correlator_enabled - parset["Observation.DataProducts.Output_Correlated.filenames"] = [] - parset["Observation.DataProducts.Output_Correlated.locations"] = [] - parset["Observation.DataProducts.Output_Correlated.storageClusterName"] = subtask.cluster.name # TODO: This must be the storage cluster, not the processing cluster - parset["Observation.DataProducts.Output_Correlated.storageClusterPartition"] = "/data/test-projects" # ResourceEstimator always wants these keys parset["Cobalt.Correlator.nrChannelsPerSubband"] = spec['COBALT']['correlator']['channels_per_subband'] if correlator_enabled else 16 parset["Cobalt.Correlator.nrBlocksPerIntegration"] = spec['COBALT']['correlator']['blocks_per_integration'] if correlator_enabled else 1 parset["Cobalt.Correlator.nrIntegrationsPerBlock"] = spec['COBALT']['correlator']['integrations_per_block'] if correlator_enabled else 1 + correlator_dataproducts = [] + if correlator_enabled: if cobalt_version >= 2 and 'phase_centers' in spec['COBALT']['correlator']: for beam_nr, digi_beam in enumerate(digi_beams): @@ -110,7 +118,6 @@ def _convert_correlator_settings_to_parset_dict(subtask: models.Subtask, spec: d dataproducts = list(subtask.output_dataproducts.filter(dataformat__value=Dataformat.Choices.MEASUREMENTSET.value).filter(datatype__value=Datatype.Choices.VISIBILITIES.value).order_by('filename')) # marshall dataproducts, but only if they're supplied. in some use cases, we want a parset before the subtask is scheduled. - correlator_dataproducts = [] for digi_beam in digi_beams: for subband in digi_beam["subbands"]: dataproduct = [dp for dp in dataproducts @@ -119,10 +126,12 @@ def _convert_correlator_settings_to_parset_dict(subtask: models.Subtask, spec: d correlator_dataproducts.append(dataproduct[0] if dataproduct else null_dataproduct) - parset["Observation.DataProducts.Output_Correlated.filenames"] = [dp.filename for dp in correlator_dataproducts] - parset["Observation.DataProducts.Output_Correlated.locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in correlator_dataproducts] - # mimic MoM placeholder thingy (the resource estimator parses this) - parset["Observation.DataProducts.Output_Correlated.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (subtask.id, sap_nr) for sap_nr in range(len(digi_beams))] + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, correlator_dataproducts), "Observation.DataProducts.Output_Correlated.")) + parset["Observation.DataProducts.Output_Correlated.storageClusterName"] = subtask.cluster.name # TODO: This must be the storage cluster, not the processing cluster + parset["Observation.DataProducts.Output_Correlated.storageClusterPartition"] = "/data/test-projects" + + # mimic MoM placeholder thingy (the resource estimator parses this) + parset["Observation.DataProducts.Output_Correlated.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (subtask.id, sap_nr) for sap_nr in range(len(digi_beams))] return parset @@ -266,15 +275,11 @@ def _convert_beamformer_settings_to_parset_dict(subtask: models.Subtask, spec: d # 2) TAB # 3) Stokes # 4) Part - parset["Observation.DataProducts.Output_CoherentStokes.enabled"] = len(coherent_dataproducts) > 0 - parset["Observation.DataProducts.Output_CoherentStokes.filenames"] = [dp.filename for dp in coherent_dataproducts] - parset["Observation.DataProducts.Output_CoherentStokes.locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in coherent_dataproducts] + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, coherent_dataproducts), "Observation.DataProducts.Output_CoherentStokes.")) parset["Observation.DataProducts.Output_CoherentStokes.storageClusterName"] = subtask.cluster.name # TODO: This must be the storage cluster, not the processing cluster parset["Observation.DataProducts.Output_CoherentStokes.storageClusterPartition"] = "/data/test-projects" - parset["Observation.DataProducts.Output_IncoherentStokes.enabled"] = len(incoherent_dataproducts) > 0 - parset["Observation.DataProducts.Output_IncoherentStokes.filenames"] = [dp.filename for dp in incoherent_dataproducts] - parset["Observation.DataProducts.Output_IncoherentStokes.locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in incoherent_dataproducts] + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, incoherent_dataproducts), "Observation.DataProducts.Output_IncoherentStokes.")) parset["Observation.DataProducts.Output_IncoherentStokes.storageClusterName"] = subtask.cluster.name # TODO: This must be the storage cluster, not the processing cluster parset["Observation.DataProducts.Output_IncoherentStokes.storageClusterPartition"] = "/data/test-projects" @@ -403,35 +408,25 @@ def _convert_to_parset_dict_for_observationcontrol_schema(subtask: models.Subtas return parset +def _common_parset_dict_for_pipeline_schemas(subtask: models.Subtask) -> dict: + """ Return a parset dict with settings common to all pipelines. """ -def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) -> dict: - # see https://support.astron.nl/confluence/pages/viewpage.action?spaceKey=TMSS&title=UC1+JSON + parset = dict() # make sure the spec is complete (including all non-filled in properties with default) spec = add_defaults_to_json_object_for_schema(subtask.specifications_doc, subtask.specifications_template.schema) - # ----------------------------------------------------------------------------------------------- - # Historic rationale: in TMSS-183 we made MAC run an actual observation from a TMSS specification. - # With the help of Auke and Jan-David I could generate the parset as defined below. - # MAC turned out to be very sensitive for having specific keys with very specific prefixes etc. - # As a result, the generated parset contains many "duplicate"(nested) keys. - # We all agree that this is ugly, and we should not want this, but hey... it works. - # We decided to keep it like this, and maybe do more tuning/pruning later in the TMSS project. - # Or, we can just get rid of this to-parset-adaper when MAC has been rewritten to the new station API. - # ----------------------------------------------------------------------------------------------- - - parset = dict() # parameterset has no proper assignment operators, so take detour via dict... - # General parset["prefix"] = "LOFAR." parset["Observation.ObsID"] = subtask.pk parset["Observation.momID"] = 0 # Needed by MACScheduler parset["Observation.otdbID"] = subtask.pk # HACK: the pipeline uses otdbID as the sasID. our tmssID>2000000 to prevent clashes. TODO: replace all otdbID's by sasID. parset["Observation.tmssID"] = subtask.pk + parset["Observation.startTime"] = formatDatetime(subtask.start_time) if isinstance(subtask.start_time, datetime) else subtask.start_time + parset["Observation.stopTime"] = formatDatetime(subtask.stop_time) if isinstance(subtask.stop_time, datetime) else subtask.stop_time + parset["Observation.processType"] = "Pipeline" - parset["Observation.processSubtype"] = "Averaging Pipeline" - parset["Observation.ObservationControl.PythonControl.pythonProgram"] = "preprocessing_pipeline.py" - parset["Observation.ObservationControl.PythonControl.softwareVersion"] = "" + project_set = set([tb.scheduling_unit_blueprint.draft.scheduling_set.project.name for tb in subtask.task_blueprints.all()]) if len(project_set) != 1: raise ConversionException('Subtask pk=%s cannot be converted to parset because it references task blueprint that belong to different projects (names=%s)' % (subtask.pk, project_set)) @@ -443,60 +438,85 @@ def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) parset["Observation.Cluster.ProcessingCluster.numberOfTasks"] = 110 # deprecated (fixed value) to be completely removed in parset with 'JDM-patch 'soon parset["Observation.Cluster.ProcessingCluster.numberOfCoresPerTask"] = 2 # deprecated (fixed value) to be completely removed in parset with 'JDM-patch 'soon + return parset + + +def _convert_to_parset_dict_for_preprocessing_pipeline_schema(subtask: models.Subtask) -> dict: + # see https://support.astron.nl/confluence/pages/viewpage.action?spaceKey=TMSS&title=UC1+JSON + + # make sure the spec is complete (including all non-filled in properties with default) + spec = add_defaults_to_json_object_for_schema(subtask.specifications_doc, subtask.specifications_template.schema) + + # ----------------------------------------------------------------------------------------------- + # Historic rationale: in TMSS-183 we made MAC run an actual observation from a TMSS specification. + # With the help of Auke and Jan-David I could generate the parset as defined below. + # MAC turned out to be very sensitive for having specific keys with very specific prefixes etc. + # As a result, the generated parset contains many "duplicate"(nested) keys. + # We all agree that this is ugly, and we should not want this, but hey... it works. + # We decided to keep it like this, and maybe do more tuning/pruning later in the TMSS project. + # Or, we can just get rid of this to-parset-adaper when MAC has been rewritten to the new station API. + # ----------------------------------------------------------------------------------------------- + + # General + parset = _common_parset_dict_for_pipeline_schemas(subtask) + parset["Observation.processSubtype"] = "Averaging Pipeline" + parset["Observation.ObservationControl.PythonControl.pythonProgram"] = "preprocessing_pipeline.py" + parset["Observation.ObservationControl.PythonControl.softwareVersion"] = "" + # DPPP steps dppp_steps = [] if spec["preflagger0"]["enabled"]: dppp_steps.append('preflagger[0]') - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].chan"] = "[%s]" % spec["preflagger0"]["channels"] - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].abstime"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].azimuth"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].chan"] = spec["preflagger0"]["channels"].split(",") + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].abstime"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].azimuth"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].baseline"] = "" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].blrange"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].blrange"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].corrtype"] = "" parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].count.path"] = "-" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].count.save"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].elevation"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].count.save"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].elevation"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].expr"] = "" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].freqrange"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].lst"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].reltime"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].timeofday"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].timeslot"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].freqrange"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].lst"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].reltime"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].timeofday"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].timeslot"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[0].type"] = "preflagger" if spec["preflagger1"]["enabled"]: dppp_steps.append('preflagger[1]') parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].corrtype"] = spec["preflagger1"]["corrtype"] - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].abstime"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].azimuth"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].abstime"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].azimuth"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].baseline"] = "" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].blrange"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].chan"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].blrange"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].chan"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].count.path"] = "-" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].count.save"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].elevation"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].count.save"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].elevation"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].expr"] = "" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].freqrange"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].lst"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].reltime"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].timeofday"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].timeslot"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].freqrange"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].lst"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].reltime"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].timeofday"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].timeslot"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.preflagger[1].type"] = "preflagger" if spec["aoflagger"]["enabled"]: dppp_steps.append('aoflagger') parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.strategy"] = spec["aoflagger"]["strategy"] - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.autocorr"] = "F" + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.autocorr"] = False parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.count.path"] = "-" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.count.save"] = "FALSE" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.keepstatistics"] = "T" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.memorymax"] = "10" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.memoryperc"] = "0" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.overlapmax"] = "0" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.overlapperc"] = "0" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.pedantic"] = "F" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.pulsar"] = "F" - parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.timewindow"] = "0" + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.count.save"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.keepstatistics"] = True + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.memorymax"] = 10 + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.memoryperc"] = 0 + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.overlapmax"] = 0 + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.overlapperc"] = 0 + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.pedantic"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.pulsar"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.timewindow"] = 0 parset["Observation.ObservationControl.PythonControl.DPPP.aoflagger.type"] = "aoflagger" if spec["demixer"]["enabled"]: @@ -509,13 +529,13 @@ def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) parset["Observation.ObservationControl.PythonControl.DPPP.demixer.ignoretarget"] = spec["demixer"]["ignore_target"] parset["Observation.ObservationControl.PythonControl.PreProcessing.demix_always"] = spec["demixer"]["demix_always"] parset["Observation.ObservationControl.PythonControl.PreProcessing.demix_if_needed"] = spec["demixer"]["demix_if_needed"] - parset["Observation.ObservationControl.PythonControl.DPPP.demixer.blrange"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.demixer.blrange"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.demixer.corrtype"] = "cross" parset["Observation.ObservationControl.PythonControl.DPPP.demixer.elevationcutoff"] = "0.0deg" parset["Observation.ObservationControl.PythonControl.DPPP.demixer.instrumentmodel"] = "instrument" - parset["Observation.ObservationControl.PythonControl.DPPP.demixer.modelsources"] = "[]" - parset["Observation.ObservationControl.PythonControl.DPPP.demixer.ntimechunk"] = "0" - parset["Observation.ObservationControl.PythonControl.DPPP.demixer.othersources"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.demixer.modelsources"] = [] + parset["Observation.ObservationControl.PythonControl.DPPP.demixer.ntimechunk"] = 0 + parset["Observation.ObservationControl.PythonControl.DPPP.demixer.othersources"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.demixer.skymodel"] = "sky" parset["Observation.ObservationControl.PythonControl.DPPP.demixer.subtractsources"] = "" parset["Observation.ObservationControl.PythonControl.DPPP.demixer.targetsource"] = "" @@ -525,26 +545,21 @@ def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) parset["Observation.ObservationControl.PythonControl.DPPP.demixer.freqstep"] = 1 parset["Observation.ObservationControl.PythonControl.DPPP.demixer.timestep"] = 1 - parset["Observation.ObservationControl.PythonControl.DPPP.steps"] = "[%s]" % ",".join(dppp_steps) + parset["Observation.ObservationControl.PythonControl.DPPP.steps"] = dppp_steps parset["Observation.ObservationControl.PythonControl.DPPP.msout.storagemanager.name"] = spec["storagemanager"] # Dataproducts - parset["Observation.DataProducts.Input_Correlated.enabled"] = "true" + subtask_inputs = list(subtask.inputs.all()) + in_dataproducts = sum([list(subtask_input.dataproducts.all()) for subtask_input in subtask_inputs],[]) - in_dataproducts = [] - for input_nr, subtask_input in enumerate(subtask.inputs.all()): - in_dataproducts = subtask_input.dataproducts.all() - parset["Observation.DataProducts.Input_Correlated.filenames"] = [dp.filename for dp in in_dataproducts] - parset["Observation.DataProducts.Input_Correlated.locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in in_dataproducts] - # mimic MoM placeholder thingy (the resource assigner parses this) - # should be expanded with SAPS and datatypes - parset["Observation.DataProducts.Input_Correlated.identifications"] = "[TMSS_subtask_%s.SAP%03d]" % (subtask_input.producer.subtask.id, input_nr) + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, in_dataproducts), "Observation.DataProducts.Input_Correlated.")) - parset["Observation.DataProducts.Input_Correlated.skip"] = "[%s]" % ",".join(['0']*len(in_dataproducts)) + # mimic MoM placeholder thingy (the resource assigner parses this) + # should be expanded with SAPS and datatypes + parset["Observation.DataProducts.Input_Correlated.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (subtask_input.producer.subtask.id, input_nr) for input_nr, subtask_input in enumerate(subtask_inputs)] - # TODO: do not use SubtaskOutput.objects.filter but make subtask.subtask_outputs work - subtask_outputs = list(models.SubtaskOutput.objects.filter(subtask_id=subtask.id)) - unsorted_out_dataproducts = sum([list(models.Dataproduct.objects.filter(producer_id=subtask_output.id)) for subtask_output in subtask_outputs],[]) + subtask_outputs = list(subtask.outputs.all()) + unsorted_out_dataproducts = sum([list(subtask_output.dataproducts.all()) for subtask_output in subtask_outputs],[]) def find_dataproduct(dataproducts: list, specification_doc: dict): hits = [dp for dp in dataproducts if dp.specifications_doc['sap'] == specification_doc['sap'] @@ -554,39 +569,36 @@ def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) # list output dataproducts in the same order as input dataproducts, matched by the identifiers out_dataproducts = [find_dataproduct(unsorted_out_dataproducts, in_dp.specifications_doc) for in_dp in in_dataproducts] - parset["Observation.DataProducts.Output_Correlated.enabled"] = "true" - parset["Observation.DataProducts.Output_Correlated.filenames"] = [dp.filename for dp in out_dataproducts] - parset["Observation.DataProducts.Output_Correlated.locations"] = ["%s:%s" % (subtask.cluster.name, dp.directory) for dp in out_dataproducts] - parset["Observation.DataProducts.Output_Correlated.skip"] = "[%s]" % ",".join(['0']*len(out_dataproducts)) - parset["Observation.DataProducts.Output_Correlated.identifications"] = "[TMSS_subtask_%s.SAP%03d]" % (subtask.id, 0) + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, out_dataproducts), "Observation.DataProducts.Output_Correlated.")) + parset["Observation.DataProducts.Output_Correlated.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (subtask.id, 0)] parset["Observation.DataProducts.Output_Correlated.storageClusterName"] = subtask.cluster.name # Other parset["Observation.ObservationControl.PythonControl.PreProcessing.SkyModel"] = "Ateam_LBA_CC" - parset["Observation.ObservationControl.PythonControl.DPPP.checkparset"] = "-1" + parset["Observation.ObservationControl.PythonControl.DPPP.checkparset"] = -1 - parset["Observation.ObservationControl.PythonControl.DPPP.msin.autoweight"] = "true" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.band"] = "-1" + parset["Observation.ObservationControl.PythonControl.DPPP.msin.autoweight"] = True + parset["Observation.ObservationControl.PythonControl.DPPP.msin.band"] = -1 parset["Observation.ObservationControl.PythonControl.DPPP.msin.baseline"] = "" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.blrange"] = "[]" + parset["Observation.ObservationControl.PythonControl.DPPP.msin.blrange"] = [] parset["Observation.ObservationControl.PythonControl.DPPP.msin.corrtype"] = "" parset["Observation.ObservationControl.PythonControl.DPPP.msin.datacolumn"] = "DATA" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.forceautoweight"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.missingdata"] = "false" + parset["Observation.ObservationControl.PythonControl.DPPP.msin.forceautoweight"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.msin.missingdata"] = False parset["Observation.ObservationControl.PythonControl.DPPP.msin.nchan"] = "nchan" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.orderms"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.sort"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.startchan"] = "0" - parset["Observation.ObservationControl.PythonControl.DPPP.msin.useflag"] = "true" - parset["Observation.ObservationControl.PythonControl.DPPP.msout.overwrite"] = "false" - parset["Observation.ObservationControl.PythonControl.DPPP.msout.tilenchan"] = "8" - parset["Observation.ObservationControl.PythonControl.DPPP.msout.tilesize"] = "4096" + parset["Observation.ObservationControl.PythonControl.DPPP.msin.orderms"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.msin.sort"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.msin.startchan"] = 0 + parset["Observation.ObservationControl.PythonControl.DPPP.msin.useflag"] = True + parset["Observation.ObservationControl.PythonControl.DPPP.msout.overwrite"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.msout.tilenchan"] = 8 + parset["Observation.ObservationControl.PythonControl.DPPP.msout.tilesize"] = 4096 parset["Observation.ObservationControl.PythonControl.DPPP.msout.vdsdir"] = "A" - parset["Observation.ObservationControl.PythonControl.DPPP.msout.writefullresflag"] = "true" + parset["Observation.ObservationControl.PythonControl.DPPP.msout.writefullresflag"] = True - parset["Observation.ObservationControl.PythonControl.DPPP.showprogress"] = "F" - parset["Observation.ObservationControl.PythonControl.DPPP.showtimings"] = "F" - parset["Observation.ObservationControl.PythonControl.DPPP.uselogger"] = "T" + parset["Observation.ObservationControl.PythonControl.DPPP.showprogress"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.showtimings"] = False + parset["Observation.ObservationControl.PythonControl.DPPP.uselogger"] = True # pragmatic solution to deal with the various parset using subsystems... # some want the keys as "Observation.<subkey>" and some as "ObsSW.Observation.<subkey>" @@ -597,10 +609,75 @@ def _convert_to_parset_dict_for_pipelinecontrol_schema(subtask: models.Subtask) return parset +def _convert_to_parset_dict_for_pulsarpipeline_schema(subtask: models.Subtask) -> dict: + # make sure the spec is complete (including all non-filled in properties with default) + spec = add_defaults_to_json_object_for_schema(subtask.specifications_doc, subtask.specifications_template.schema) + + # General + parset = _common_parset_dict_for_pipeline_schemas(subtask) + parset["Observation.processSubtype"] = "Pulsar Pipeline" + parset["Observation.ObservationControl.PythonControl.pythonProgram"] = "pulsar_pipeline.py" + parset["Observation.ObservationControl.PythonControl.softwareVersion"] = "lofar-pulp" + + # Pulsar pipeline settings + parset["Observation.ObservationControl.PythonControl.Pulsar.2bf2fits_extra_opts"] = spec["presto"]["2bf2fits_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.8bit_conversion_sigma"] = spec["output"]["8bit_conversion_sigma"] + parset["Observation.ObservationControl.PythonControl.Pulsar.decode_nblocks"] = spec["presto"]["decode_nblocks"] + parset["Observation.ObservationControl.PythonControl.Pulsar.decode_sigma"] = spec["presto"]["decode_sigma"] + parset["Observation.ObservationControl.PythonControl.Pulsar.digifil_extra_opts"] = spec["dspsr"]["digifil_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.dspsr_extra_opts"] = spec["dspsr"]["dspsr_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.dynamic_spectrum_time_average"] = spec["output"]["dynamic_spectrum_time_average"] + parset["Observation.ObservationControl.PythonControl.Pulsar.nofold"] = spec["presto"]["nofold"] + parset["Observation.ObservationControl.PythonControl.Pulsar.nopdmp"] = spec["dspsr"]["nopdmp"] + parset["Observation.ObservationControl.PythonControl.Pulsar.norfi"] = spec["dspsr"]["norfi"] + parset["Observation.ObservationControl.PythonControl.Pulsar.prepdata_extra_opts"] = spec["presto"]["prepdata_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.prepfold_extra_opts"] = spec["presto"]["prepfold_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.prepsubband_extra_opts"] = spec["presto"]["prepsubband_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.pulsar"] = spec["pulsar"] + parset["Observation.ObservationControl.PythonControl.Pulsar.raw_to_8bit"] = spec["output"]["raw_to_8bit"] + parset["Observation.ObservationControl.PythonControl.Pulsar.rfifind_extra_opts"] = spec["presto"]["rfifind_extra_opts"] + parset["Observation.ObservationControl.PythonControl.Pulsar.rrats"] = spec["presto"]["rrats"] + parset["Observation.ObservationControl.PythonControl.Pulsar.rrats_dm_range"] = spec["presto"]["rrats_dm_range"] + parset["Observation.ObservationControl.PythonControl.Pulsar.single_pulse"] = spec["single_pulse"] + parset["Observation.ObservationControl.PythonControl.Pulsar.skip_dspsr"] = spec["dspsr"]["skip_dspsr"] + parset["Observation.ObservationControl.PythonControl.Pulsar.skip_dynamic_spectrum"] = spec["output"]["skip_dynamic_spectrum"] + parset["Observation.ObservationControl.PythonControl.Pulsar.skip_prepfold"] = spec["presto"]["skip_prepfold"] + parset["Observation.ObservationControl.PythonControl.Pulsar.tsubint"] = spec["dspsr"]["tsubint"] + + # Dataproducts. NOTE: The pulsar pipeline doesn't actually use this information, and reads input/writes output as it pleases. + + inputs = subtask.inputs.all() + in_dataproducts = sum([list(subtask_input.dataproducts.all()) for subtask_input in inputs], []) + coherent_in_dataproducts = [dp for dp in in_dataproducts if dp.specifications_doc["coherent"]] + incoherent_in_dataproducts = [dp for dp in in_dataproducts if not dp.specifications_doc["coherent"]] + + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, coherent_in_dataproducts), "Observation.DataProducts.Input_CoherentStokes.")) + parset["Observation.DataProducts.Input_CoherentStokes.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (input.producer.subtask.id, 0) for input in inputs] # needed by ResourceEstimator + + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, incoherent_in_dataproducts), "Observation.DataProducts.Input_IncoherentStokes.")) + parset["Observation.DataProducts.Input_IncoherentStokes.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (input.producer.subtask.id, 0) for input in inputs] # needed by ResourceEstimator + + # TODO: do not use SubtaskOutput.objects.filter but make subtask.subtask_outputs work + subtask_outputs = list(models.SubtaskOutput.objects.filter(subtask_id=subtask.id)) + out_dataproducts = sum([list(models.Dataproduct.objects.filter(producer_id=subtask_output.id)) for subtask_output in subtask_outputs], []) # todo, order these correctly? + + parset.update(_add_prefix(_dataproduct_parset_subkeys(subtask, out_dataproducts), "Observation.DataProducts.Output_Pulsar.")) + parset["Observation.DataProducts.Output_Pulsar.identifications"] = ["TMSS_subtask_%s.SAP%03d" % (subtask.id, 0)] + parset["Observation.DataProducts.Output_Pulsar.storageClusterName"] = subtask.cluster.name + + # pragmatic solution to deal with the various parset using subsystems... + # some want the keys as "Observation.<subkey>" and some as "ObsSW.Observation.<subkey>" + # so, just copy all "Observation.<subkey>" keys and prepend them with ObsSW. + for key, value in list(parset.items()): + if key.startswith("Observation."): + parset["ObsSW."+key] = value + + return parset # dict to store conversion methods based on subtask.specifications_template.name _convertors = {'observation control': _convert_to_parset_dict_for_observationcontrol_schema, - 'pipeline control': _convert_to_parset_dict_for_pipelinecontrol_schema } + 'preprocessing pipeline': _convert_to_parset_dict_for_preprocessing_pipeline_schema, + 'pulsar pipeline': _convert_to_parset_dict_for_pulsarpipeline_schema} def convert_to_parset(subtask: models.Subtask) -> parameterset: diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/sip.py b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/sip.py index f647a9a9caada1b2c7b4e8a044ce5e15a6d22619..4d162144843eeb0367673bd31cce1eaca620ab41 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/adapters/sip.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/adapters/sip.py @@ -185,7 +185,7 @@ def create_sip_representation_for_subtask(subtask: Subtask): sourcedata_identifiers=sourcedata_identifiers, process_map=process_map) - if subtask.specifications_template.name == "pipeline control": # todo: re-evaluate this because schema name might change + if subtask.specifications_template.name == "preprocessing pipeline": # todo: re-evaluate this because schema name might change spec = add_defaults_to_json_object_for_schema(subtask.specifications_doc, subtask.specifications_template.schema) pipeline = siplib.AveragingPipeline( # <-- this is what we need for UC1 pipeline_map, diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/models/specification.py b/SAS/TMSS/backend/src/tmss/tmssapp/models/specification.py index b7e4c3b56074d6d6b21d6bec481ef603f562895b..31f5ca0a85ac7a679c725d03922678ab468e0588 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/models/specification.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/models/specification.py @@ -75,6 +75,7 @@ class Datatype(AbstractChoice): INSTRUMENT_MODEL = "instrument model" IMAGE = "image" QUALITY = "quality" + PULSAR_PROFILE = "pulsar profile" class Dataformat(AbstractChoice): @@ -86,6 +87,8 @@ class Dataformat(AbstractChoice): BEAMFORMED = "Beamformed" QA_HDF5 = "QA_HDF5" QA_PLOTS = "QA_Plots" + PULP_SUMMARY = "pulp summary" + PULP_ANALYSIS = "pulp analysis" class CopyReason(AbstractChoice): diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/populate.py b/SAS/TMSS/backend/src/tmss/tmssapp/populate.py index 30d1cb187273eb4dc73d5271516a8bd2aa834a77..8913d4251adf474562462cc7579c0663cc528f32 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/populate.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/populate.py @@ -422,6 +422,32 @@ def populate_connectors(): task_template=TaskTemplate.objects.get(name='target observation'), iotype=IOType.objects.get(value=IOType.Choices.OUTPUT.value)) + # beamforming observation + TaskConnectorType.objects.create(role=Role.objects.get(value=Role.Choices.BEAMFORMER.value), + datatype=Datatype.objects.get(value=Datatype.Choices.TIME_SERIES.value), + dataformat=Dataformat.objects.get(value=Dataformat.Choices.BEAMFORMED.value), + task_template=TaskTemplate.objects.get(name='beamforming observation'), + iotype=IOType.objects.get(value=IOType.Choices.OUTPUT.value)) + + # pulsar pipeline + TaskConnectorType.objects.create(role=Role.objects.get(value=Role.Choices.BEAMFORMER.value), + datatype=Datatype.objects.get(value=Datatype.Choices.TIME_SERIES.value), + dataformat=Dataformat.objects.get(value=Dataformat.Choices.BEAMFORMED.value), + task_template=TaskTemplate.objects.get(name='pulsar pipeline'), + iotype=IOType.objects.get(value=IOType.Choices.INPUT.value)) + + TaskConnectorType.objects.create(role=Role.objects.get(value=Role.Choices.ANY.value), + datatype=Datatype.objects.get(value=Datatype.Choices.QUALITY.value), + dataformat=Dataformat.objects.get(value=Dataformat.Choices.PULP_SUMMARY.value), + task_template=TaskTemplate.objects.get(name='pulsar pipeline'), + iotype=IOType.objects.get(value=IOType.Choices.OUTPUT.value)) + + TaskConnectorType.objects.create(role=Role.objects.get(value=Role.Choices.ANY.value), + datatype=Datatype.objects.get(value=Datatype.Choices.PULSAR_PROFILE.value), + dataformat=Dataformat.objects.get(value=Dataformat.Choices.PULP_ANALYSIS.value), + task_template=TaskTemplate.objects.get(name='pulsar pipeline'), + iotype=IOType.objects.get(value=IOType.Choices.OUTPUT.value)) + # preprocessing pipeline for iotype_value in (IOType.Choices.INPUT.value, IOType.Choices.OUTPUT.value): TaskConnectorType.objects.create(role=Role.objects.get(value=Role.Choices.ANY.value), diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/common_schema_template-tasks-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/common_schema_template-tasks-1.json index 398542538b828ae57a2d392dffcb79e8259ac87e..ae7d909686d137cd581b0701bc6af5c754a3254f 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/common_schema_template-tasks-1.json +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/common_schema_template-tasks-1.json @@ -22,13 +22,13 @@ "type": "string", "title": "Data Type", "description": "The data type of a task connector describes its what kind of data is produced/consumed.", - "enum": ["visibilities", "time series", "instrument model", "image", "quality"] + "enum": ["visibilities", "time series", "instrument model", "image", "quality", "pulsar profile"] }, "dataformat": { "type": "string", "title": "Data Format", "description": "The data type of a task connector describes in which format the data is produced/consumed.", - "enum": ["MeasurementSet", "Beamformed", "QA_HDF5", "QA_Plots"] + "enum": ["MeasurementSet", "Beamformed", "QA_HDF5", "QA_Plots", "pulp summary", "pulp analysis"] } }, "required": [ @@ -38,4 +38,4 @@ ] } } -} \ No newline at end of file +} diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_feedback_template-pulp.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_feedback_template-pulp.json new file mode 100644 index 0000000000000000000000000000000000000000..f731916f10ee6eb6a8336dd3d5b4dd67b90f7ceb --- /dev/null +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_feedback_template-pulp.json @@ -0,0 +1,175 @@ +{ + "$id":"http://tmss.lofar.org/api/schemas/dataproductfeedbacktemplate/feedback/1#", + "$schema": "http://json-schema.org/draft-06/schema#", + "title": "feedback", + "type": "object", + "default": {}, + "properties": { + "percentage_written": { + "title": "Percentage written", + "type": "integer", + "default": 0 + }, + "frequency": { + "title": "Frequency", + "type": "object", + "default": {}, + "properties": { + "subbands": { + "title": "Subbands", + "type": "array", + "default": [], + "items": { + "title": "Subband", + "type": "integer", + "minimum": 0, + "maximum": 511 + } + }, + "central_frequencies": { + "title": "Central frequencies", + "type": "array", + "default": [], + "items": { + "title": "frequency", + "type": "number", + "default": 0.0, + "minimum": 0.0 + } + }, + "channel_width": { + "title": "Channel width", + "type": "number", + "default": 3051.8, + "minimum": 0.0 + }, + "channels_per_subband": { + "title": "Channels per subband", + "type": "integer", + "default": 64, + "minimum": 1 + } + }, + "required": [ "subbands", "central_frequencies", "channel_width", "channels_per_subband" ] + }, + "time": { + "title": "Time", + "type": "object", + "default": {}, + "properties": { + "start_time": { + "title": "Start time", + "$ref": "http://tmss.lofar.org/api/schemas/commonschematemplate/datetime/1/#/definitions/timestamp", + "default": "1970-01-01T00:00:00Z" + }, + "duration": { + "title": "Duration", + "type": "number", + "default": 0.0 + }, + "sample_width": { + "title": "Sample width", + "type": "number", + "default": 0.0 + } + }, + "required": [ "start_time", "duration", "sample_width" ] + }, + "antennas": { + "$ref": "http://tmss.lofar.org/api/schemas/commonschematemplate/stations/1/#/definitions/antennas", + "default": {} + }, + "target": { + "title": "Target", + "type": "object", + "default": {}, + "properties": { + "pointing": { + "title": "Pointing", + "$ref": "http://tmss.lofar.org/api/schemas/commonschematemplate/pointing/1/#/definitions/pointing", + "default": {} + } + }, + "required": [ "pointing" ] + }, + "samples": { + "title": "Samples", + "type": "object", + "default": {}, + "properties": { + "polarisations": { + "title": "Polarisations", + "type": "array", + "default": [ + "XX", + "XY", + "YX", + "YY" + ], + "items": { + "title": "Polarisation", + "type": "string", + "default": "I", + "enum": [ + "XX", + "XY", + "YX", + "YY", + "I", + "Q", + "U", + "V", + "Xr", + "Xi", + "Yr", + "Yi" + ] + } + }, + "type": { + "title": "Type", + "type": "string", + "default": "float", + "enum": [ + "float", + "integer" + ] + }, + "complex": { + "title": "Complex values", + "type": "boolean", + "default": true + }, + "bits": { + "title": "Bits per sample", + "type": "integer", + "default": 32, + "enum": [ + 4, + 8, + 16, + 32, + 64 + ] + }, + "writer": { + "title": "Writer", + "type": "string", + "default": "standard", + "enum": [ + "lofarstman", + "standard", + "dysco" + ] + }, + "writer_version": { + "title": "Writer version", + "type": "string", + "default": "UNKNOWN" + } + }, + "required": [ "polarisations", "type", "complex", "bits", "writer" ] + } + }, + "required": [ "percentage_written", "frequency", "time", "antennas", "target", "samples" ] +} diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-pulp-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-pulp-1.json new file mode 100644 index 0000000000000000000000000000000000000000..47ba6271b11466d5687e23fbc641ab160b7ad86a --- /dev/null +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-pulp-1.json @@ -0,0 +1,34 @@ +{ + "$id":"http://tmss.lofar.org/api/schemas/dataproductspecificationtemplate/pulp summary/1#", + "$schema": "http://json-schema.org/draft-06/schema#", + "title": "pulp summary", + "type": "object", + "default": {}, + "properties": { + "coherent": { + "title": "Coherent", + "description": "Summary covers coherent or incoherent TABs", + "type": "boolean", + "default": true + }, + "identifiers": { + "title": "Identifiers", + "description": "Identification of this dataproduct within the producing subtask.", + "type": "object", + "default": {}, + "properties": { + "obsid": { + "title": "Observation ID", + "description": "Summary covers TABs of this subtask observation ID", + "type": "integer", + "default": 0, + "minimum": 0 + } + }, + "required": [ + "obsid" + ] + } + }, + "required": [ "identifiers" ] +} diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-timeseries-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-timeseries-1.json index d11ec11cc085263e455984410ad0f4e3dcc8e5ca..04b609dbe320ff4cb9af1cdef19fcb17d7fc1b49 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-timeseries-1.json +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/dataproduct_specifications_template-timeseries-1.json @@ -1,7 +1,7 @@ { - "$id":"http://tmss.lofar.org/api/schemas/dataproductspecificationtemplate/timeseries/1#", + "$id":"http://tmss.lofar.org/api/schemas/dataproductspecificationtemplate/time series/1#", "$schema": "http://json-schema.org/draft-06/schema#", - "title": "timeseries", + "title": "time series", "type": "object", "default": {}, "properties": { @@ -10,6 +10,12 @@ "title": "SAP", "default": "" }, + "coherent": { + "title": "Coherent", + "description": "TAB is a coherent addition", + "type": "boolean", + "default": true + }, "identifiers": { "title": "Identifiers", "description": "Identification of this dataproduct within the producing subtask.", @@ -50,20 +56,13 @@ "default": 0, "minimum": 0, "maximum": 3 - }, - "coherent": { - "title": "Coherent", - "description": "TAB is a coherent addition", - "type": "boolean", - "default": true } }, "required": [ "sap_index", "tab_index", "part_index", - "stokes_index", - "coherent" + "stokes_index" ] } }, diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pipeline-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-preprocessing-pipeline-1.json similarity index 96% rename from SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pipeline-1.json rename to SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-preprocessing-pipeline-1.json index e52ab545b6fb1fc8224b83a9144f880dbd0fed1f..1fb96f5442e695448fd2f8e6a91d9d20516bdecb 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pipeline-1.json +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-preprocessing-pipeline-1.json @@ -1,8 +1,8 @@ { - "$id":"http://tmss.lofar.org/api/schemas/subtasktemplate/pipeline control/1#", + "$id":"http://tmss.lofar.org/api/schemas/subtasktemplate/preprocessing pipeline/1#", "$schema": "http://json-schema.org/draft-06/schema#", - "title":"pipeline control", - "description":"This schema defines the parameters to setup and control a (preprocessing) pipeline subtask.", + "title":"preprocessing pipeline", + "description":"This schema defines the parameters to setup and control a preprocessing pipeline subtask.", "version":1, "type": "object", "properties": { diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pulsar-pipeline-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pulsar-pipeline-1.json new file mode 100644 index 0000000000000000000000000000000000000000..cdf9f7717ef46f9acc4d51aa25f6b66ad1b5541e --- /dev/null +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/subtask_template-pulsar-pipeline-1.json @@ -0,0 +1,179 @@ +{ + "$id": "http://tmss.lofar.org/api/schemas/subtasktemplate/pulsar pipeline/1#", + "type": "object", + "title": "pulsar pipeline", + "$schema": "http://json-schema.org/draft-07/schema#", + "properties": { + "pulsar": { + "type": "string", + "title": "Pulsar name/strategy", + "description": "Name of the pulsar to fold, or strategy how to find it", + "default": "tabfind+" + }, + "single_pulse": { + "type": "boolean", + "title": "Single-pulse search", + "default": false + }, + "threads": { + "type": "integer", + "title": "Number of CPU threads to use", + "default": 2, + "minimum": 1 + }, + "presto": { + "title": "PRESTO", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "2bf2fits_extra_opts": { + "type": "string", + "title": "2bf2fits options", + "description": "HDF5 to PSRFITS command-line options", + "default": "" + }, + "decode_nblocks": { + "title": "Decode nr blocks", + "description": "Number of blocks to read & decode at once", + "type": "integer", + "minimum": 1, + "default": 100 + }, + "decode_sigma": { + "title": "Decode sigma", + "description": "Sigma threshold for decoding", + "type": "number", + "minimum": 1, + "default": 3 + }, + "nofold": { + "title": "Skip folding", + "description": "If true, do not fold the pulsar", + "type": "boolean", + "default": false + }, + "prepdata_extra_opts": { + "type": "string", + "title": "prepdata options", + "description": "PREPDATA command-line options", + "default": "" + }, + "prepfold_extra_opts": { + "type": "string", + "title": "prepdata options", + "description": "PREPDATA command-line options", + "default": "" + }, + "prepsubband_extra_opts": { + "type": "string", + "title": "prepsubband options", + "description": "PREPSUBBAND command-line options", + "default": "" + }, + "rfifind_extra_opts": { + "type": "string", + "title": "RFI find options", + "description": "RFIFIND command-line options", + "default": "" + }, + "rrats": { + "title": "RRATs analysis", + "type": "boolean", + "default": false + }, + "rrats_dm_range": { + "title": "RRATs DM range", + "type": "number", + "minimum": 0.0, + "default": 5.0 + }, + "skip_prepfold": { + "title": "Skip PREPFOLD", + "type": "boolean", + "default": false + } + } + }, + "dspsr": { + "title": "DSPSR", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "skip_dspsr": { + "type": "boolean", + "title": "Skip DSPSR", + "description": "If true, do not run DSPSR", + "default": false + }, + "digifil_extra_opts": { + "type": "string", + "title": "DIGIFIL options", + "description": "DIGIFIL command-line options", + "default": "" + }, + "dspsr_extra_opts": { + "type": "string", + "title": "DSPSR options", + "description": "DSPSR command-line options", + "default": "" + }, + "nopdmp": { + "title": "Skip optimising period & DM", + "type": "boolean", + "default": false + }, + "norfi": { + "title": "Skip RFI cleaning", + "type": "boolean", + "default": false + }, + "tsubint": { + "title": "Subintegration length", + "type": "integer", + "minimum": -1, + "default": -1 + } + } + }, + "output": { + "title": "Output", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "raw_to_8bit": { + "type": "boolean", + "title": "Convert to 8 bit", + "description": "Convert output from 32-bit to 8-bit samples", + "default": false + }, + "8bit_conversion_sigma": { + "type": "number", + "title": "Conversion sigma", + "description": "Conversion sigma to use when converting to 8-bit samples", + "minimum": 1.0, + "default": 5.0 + }, + "skip_dynamic_spectrum": { + "title": "Skip dynamic spectrum", + "type": "boolean", + "default": false + }, + "dynamic_spectrum_time_average": { + "title": "Dynamic spectrum time average", + "type": "number", + "minimum": 0.01, + "default": 0.5 + } + } + } + }, + "required": [ + "pulsar", + "presto", + "dspsr", + "output" + ] +} diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/task_template-pulsar_pipeline-1.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/task_template-pulsar_pipeline-1.json new file mode 100644 index 0000000000000000000000000000000000000000..ff7248ca01a0bc7f560bc6ea7d2fceff269a9dd7 --- /dev/null +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/task_template-pulsar_pipeline-1.json @@ -0,0 +1,224 @@ +{ + "$id": "http://tmss.lofar.org/api/schemas/tasktemplate/pulsar pipeline/1#", + "type": "object", + "title": "pulsar pipeline", + "$schema": "http://json-schema.org/draft-07/schema#", + "properties": { + "pulsar": { + "title": "Pulsar to fold", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "strategy": { + "type": "string", + "title": "Strategy", + "description": "How to look up the pulsar to fold", + "default": "manual", + "enum": [ + "manual", + "meta", + "sapfind", + "sapfind3", + "tabfind", + "tabfind+" + ] + }, + "name": { + "type": "string", + "title": "Name", + "description": "Name of the pulsar to fold, if strategy=manual", + "default": "" + } + } + }, + "single_pulse_search": { + "type": "boolean", + "title": "Single-pulse search", + "default": false + }, + "presto": { + "title": "PRESTO", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "input": { + "title": "Input", + "type": "object", + "additionalProperties": false, + "properties": { + "nr_blocks": { + "title": "Nr of blocks", + "description": "Number of blocks to read at a time", + "type": "integer", + "minimum": 1, + "default": 100 + }, + "samples_per_block": { + "title": "Block size (samples)", + "type": "integer", + "minimum": 512, + "default": 8192 + }, + "decode_sigma": { + "title": "Decode sigma", + "description": "Sigma threshold for decoding", + "type": "number", + "minimum": 1, + "default": 3 + } + } + }, + "fold_profile": { + "title": "Fold", + "description": "Fold the pulsar profile", + "type": "boolean", + "default": true + }, + "prepfold": { + "title": "Enable prepfold", + "type": "boolean", + "default": true + }, + "rrats": { + "title": "RRATs analysis", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "enabled": { + "title": "Enabled", + "type": "boolean", + "default": false + }, + "dm_range": { + "title": "DM range", + "type": "number", + "minimum": 0, + "default": 5 + } + } + } + } + }, + "dspsr": { + "title": "DSPSR", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "enabled": { + "type": "boolean", + "title": "Enabled", + "default": true + }, + "digifil": { + "title": "DSPSR", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "dm": { + "title": "DM", + "desciption": "Dispersion Measure (0.0 for none)", + "type": "number", + "minimum": 0, + "default": 0 + }, + "integration_time": { + "title": "Integration time", + "type": "number", + "minimum": 0.1, + "default": 4 + }, + "frequency_channels": { + "title": "Frequency channels", + "description": "Number of frequency channels (multiple of subbands/part)", + "type": "integer", + "minimum": 1, + "maximum": 512, + "default": 512 + }, + "coherent_dedispersion": { + "title": "Coherent Dedispersion", + "type": "boolean", + "default": true + } + } + }, + "optimise_period_dm": { + "title": "Optimise period & DM", + "type": "boolean", + "default": true + }, + "rfi_excision": { + "title": "RFI excision", + "description": "Excise/clean/remove detected RFI", + "type": "boolean", + "default": true + }, + "subintegration_length": { + "title": "Subintegration length", + "type": "integer", + "minimum": -1, + "default": -1 + } + } + }, + "output": { + "title": "Output", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "quantisation": { + "title": "Quantisation", + "description": "Quantise output into 8-bit samples", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "enabled": { + "type": "boolean", + "title": "Enabled", + "default": false + }, + "scale": { + "type": "number", + "title": "Conversion sigma", + "description": "Conversion sigma to use when converting to 8-bit samples", + "minimum": 1, + "default": 5 + } + } + }, + "dynamic_spectrum": { + "title": "Dynamic Spectrum", + "type": "object", + "default": {}, + "additionalProperties": false, + "properties": { + "enabled": { + "type": "boolean", + "title": "Enabled", + "default": false + }, + "time_average": { + "type": "number", + "title": "Time average", + "minimum": 0.01, + "default": 0.5 + } + } + } + } + } + }, + "required": [ + "pulsar", + "presto", + "dspsr", + "output" + ] +} diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/templates.json b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/templates.json index 644405c2243aa00b45ea54d58bb696c767ebc1ac..b5c8b025b3f50eacae1a6fea3a50fbfad97328ab 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/schemas/templates.json +++ b/SAS/TMSS/backend/src/tmss/tmssapp/schemas/templates.json @@ -35,6 +35,10 @@ "file_name": "dataproduct_specifications_template-empty-1.json", "template": "dataproduct_specifications_template" }, + { + "file_name": "dataproduct_specifications_template-pulp-1.json", + "template": "dataproduct_specifications_template" + }, { "file_name": "dataproduct_specifications_template-timeseries-1.json", "template": "dataproduct_specifications_template" @@ -90,6 +94,15 @@ "validation_code_js": "", "description": "This schema defines the parameters for a preprocessing pipeline." }, + { + "file_name": "task_template-pulsar_pipeline-1.json", + "template": "task_template", + "name": "pulsar pipeline", + "type": "pipeline", + "version": 1, + "validation_code_js": "", + "description": "This schema defines the parameters for a pulsar pipeline." + }, { "file_name": "subtask_template-observation-1.json", "template": "subtask_template", @@ -98,25 +111,32 @@ "queue": false }, { - "file_name": "subtask_template-pipeline-1.json", + "file_name": "subtask_template-preprocessing-pipeline-1.json", "template": "subtask_template", "type": "pipeline", - "realtime": true, - "queue": false + "realtime": false, + "queue": true + }, + { + "file_name": "subtask_template-pulsar-pipeline-1.json", + "template": "subtask_template", + "type": "pipeline", + "realtime": false, + "queue": true }, { "file_name": "subtask_template-qa_file-1.json", "template": "subtask_template", "type": "qa_files", - "realtime": true, - "queue": false + "realtime": false, + "queue": true }, { "file_name": "subtask_template-qa_plots-1.json", "template": "subtask_template", "type": "qa_plots", - "realtime": true, - "queue": false + "realtime": false, + "queue": true }, { "file_name": "scheduling_constraints_template-constraints-1.json", diff --git a/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py b/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py index b5a78c4074ff5a55bb73f6f4c8a6ff527f764d79..e99dd864d74c15acb51854aa8f145c3a96bf9ea7 100644 --- a/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py +++ b/SAS/TMSS/backend/src/tmss/tmssapp/subtasks.py @@ -8,6 +8,7 @@ from functools import cmp_to_key from collections.abc import Iterable from math import ceil from lofar.common.ring_coordinates import RingCoordinates +from os.path import splitext from lofar.common.datetimeutils import formatDatetime, round_to_second_precision from lofar.common import isProductionEnvironment @@ -63,6 +64,7 @@ def create_subtasks_from_task_blueprint(task_blueprint: TaskBlueprint) -> [Subta create_qafile_subtask_from_task_blueprint, create_qaplots_subtask_from_task_blueprint], 'preprocessing pipeline': [create_preprocessing_subtask_from_task_blueprint], + 'pulsar pipeline': [create_pulsar_pipeline_subtask_from_task_blueprint], 'ingest': [create_ingest_subtask_from_task_blueprint], 'cleanup': [create_cleanup_subtask_from_task_blueprint]} generators_mapping['calibrator observation'] = generators_mapping['target observation'] @@ -648,7 +650,7 @@ def create_qaplots_subtask_from_qafile_subtask(qafile_subtask: Subtask) -> Subta return qaplots_subtask -def create_preprocessing_subtask_from_task_blueprint(task_blueprint: TaskBlueprint) -> Subtask: +def create_pipeline_subtask_from_task_blueprint(task_blueprint: TaskBlueprint, subtask_template_name: str, generate_subtask_specs_from_task_spec_func) -> Subtask: ''' Create a subtask to for the preprocessing pipeline. This method implements "Instantiate subtasks" step from the "Specification Flow" https://support.astron.nl/confluence/display/TMSS/Specification+Flow @@ -656,6 +658,7 @@ def create_preprocessing_subtask_from_task_blueprint(task_blueprint: TaskBluepri # step 0: check pre-requisites check_prerequities_for_subtask_creation(task_blueprint) # TODO: go more elegant lookup of predecessor observation task + # TODO: do not require the input to come from an observation observation_predecessor_tasks = [t for t in task_blueprint.predecessors.all() if any(st for st in t.subtasks.all() if st.specifications_template.type.value == SubtaskType.Choices.OBSERVATION.value)] if not observation_predecessor_tasks: @@ -663,10 +666,11 @@ def create_preprocessing_subtask_from_task_blueprint(task_blueprint: TaskBluepri "to an observation predecessor (sub)task." % task_blueprint.pk) # step 1: create subtask in defining state, with filled-in subtask_template - subtask_template = SubtaskTemplate.objects.get(name='pipeline control') + subtask_template = SubtaskTemplate.objects.get(name=subtask_template_name) default_subtask_specs = get_default_json_object_for_schema(subtask_template.schema) task_specs_with_defaults = add_defaults_to_json_object_for_schema(task_blueprint.specifications_doc, task_blueprint.specifications_template.schema) - subtask_specs = _generate_subtask_specs_from_preprocessing_task_specs(task_specs_with_defaults, default_subtask_specs) + subtask_specs = generate_subtask_specs_from_task_spec_func(task_specs_with_defaults, default_subtask_specs) + cluster_name = task_blueprint.specifications_doc.get("storage_cluster", "CEP4") subtask_data = { "start_time": None, "stop_time": None, @@ -701,6 +705,14 @@ def create_preprocessing_subtask_from_task_blueprint(task_blueprint: TaskBluepri return subtask +def create_preprocessing_subtask_from_task_blueprint(task_blueprint: TaskBlueprint) -> Subtask: + return create_pipeline_subtask_from_task_blueprint(task_blueprint, "preprocessing pipeline", _generate_subtask_specs_from_preprocessing_task_specs) + + +def create_pulsar_pipeline_subtask_from_task_blueprint(task_blueprint: TaskBlueprint) -> Subtask: + return create_pipeline_subtask_from_task_blueprint(task_blueprint, "pulsar pipeline", _generate_subtask_specs_from_pulsar_pipeline_task_specs) + + def create_ingest_subtask_from_task_blueprint(task_blueprint: TaskBlueprint) -> Subtask: ''' Create a subtask to for an ingest job This method implements "Instantiate subtasks" step from the "Specification Flow" @@ -1251,6 +1263,38 @@ def get_previous_related_task_blueprint_with_time_offset(task_blueprint): return previous_related_task_blueprint, time_offset +def _bulk_create_dataproducts_with_global_identifiers(dataproducts: list) -> list: + """ + Bulk create the provided dataproducts in the database, and give each of them an unique global identifier. + + :return: the created dataproduct objects + """ + + # Bulk create identifiers, and then update the dataproducts with a link to the actual created objects. + # This is needed as bulk_create needs to have any relations resolved. + dp_global_identifiers = SIPidentifier.objects.bulk_create([SIPidentifier(source="TMSS") for _ in dataproducts]) + for dp, global_identifier in zip(dataproducts, dp_global_identifiers): + dp.global_identifier = global_identifier + + return Dataproduct.objects.bulk_create(dataproducts) + + +def _output_root_directory(subtask: Subtask) -> str: + """ Return the directory under which output needs to be stored. """ + + # Support for several projects will be added in TMSS-689, for now catch it. + project_set = set([tb.scheduling_unit_blueprint.draft.scheduling_set.project.name for tb in subtask.task_blueprints.all()]) + if len(project_set) != 1: + raise SubtaskSchedulingException('Cannot schedule subtask id=%s because it references task blueprints that belong to different projects=%s' % (subtask.id, project_set)) + + project = list(project_set)[0] + + directory = "/data/%s/%s/L%s" % ("projects" if isProductionEnvironment() else "test-projects", + project, + subtask.id) + + return directory + def schedule_observation_subtask(observation_subtask: Subtask): ''' Schedule the given observation_subtask For first observations in a 'train' of subtasks this method is typically called by hand, or by the short-term-scheduler. @@ -1332,13 +1376,7 @@ def schedule_observation_subtask(observation_subtask: Subtask): specifications_template=SAPTemplate.objects.get(name="SAP")) for sap_nr, pointing in enumerate(specifications_doc['stations']['digital_pointings'])] # store everything below this directory - # Support for several projects will be added in TMSS-689, for now catch it. - project_set = set([tb.scheduling_unit_blueprint.draft.scheduling_set.project.name for tb in observation_subtask.task_blueprints.all()]) - if len(project_set) != 1: - raise SubtaskSchedulingException('Cannot schedule subtask id=%s because it references task blueprints that belong to different projects=%s' % (observation_subtask.id, project_set)) - directory = "/data/%s/%s/L%s" % ("projects" if isProductionEnvironment() else "test-projects", - list(project_set)[0], # TMSS-689: use correct project name for each dataproduct - observation_subtask.id) + directory = _output_root_directory(observation_subtask) # create correlated dataproducts if specifications_doc['COBALT']['correlator']['enabled']: @@ -1371,7 +1409,7 @@ def schedule_observation_subtask(observation_subtask: Subtask): # create beamformer dataproducts - dataproduct_specifications_template_timeseries = DataproductSpecificationsTemplate.objects.get(name="timeseries") + dataproduct_specifications_template_timeseries = DataproductSpecificationsTemplate.objects.get(name="time series") def _sap_index(saps: dict, sap_name: str) -> int: """ Return the SAP index in the observation given a certain SAP name. """ @@ -1422,12 +1460,8 @@ def schedule_observation_subtask(observation_subtask: Subtask): for tab_idx, tab in enumerate(fields): dataproducts += tab_dataproducts(sap_idx, pipeline_nr, tab_idx, pipeline['coherent'], True) - # Bulk create identifiers, and then update the dataproducts with a link to the actual created objects. - # This is needed as bulk_create needs to have any relations resolved. - dp_global_identifiers = SIPidentifier.objects.bulk_create([SIPidentifier(source="TMSS") for _ in dataproducts]) - for dp, global_identifier in zip(dataproducts, dp_global_identifiers): - dp.global_identifier = global_identifier - Dataproduct.objects.bulk_create(dataproducts) + # create the dataproducts + _bulk_create_dataproducts_with_global_identifiers(dataproducts) # step 4: resource assigner (if possible) assign_or_unassign_resources(observation_subtask) @@ -1441,6 +1475,121 @@ def schedule_observation_subtask(observation_subtask: Subtask): return observation_subtask +def _create_preprocessing_output_dataproducts_and_transforms(pipeline_subtask: Subtask, input_dataproducts: list): + # select subtask output the new dataproducts will be linked to + pipeline_subtask_output = pipeline_subtask.outputs.first() # TODO: if we have several, how to map input to output? + + # TODO: create them from the spec, instead of "copying" the input filename + dataformat = Dataformat.objects.get(value="MeasurementSet") + datatype = Datatype.objects.get(value="visibilities") + + # TODO: use existing and reasonable selection and specification templates for output when we have those, for now, use "empty" + dataproduct_specifications_template = DataproductSpecificationsTemplate.objects.get(name="visibilities") + dataproduct_feedback_template = DataproductFeedbackTemplate.objects.get(name="empty") + directory = _output_root_directory(pipeline_subtask) + "uv/" + + # input:output mapping is 1:1 + def output_dataproduct_filename(input_dp: Dataproduct) -> str: + """ Construct the output filename to produce for an input. """ + if '_' in input_dp.filename and input_dp.filename.startswith('L'): + return "L%s_%s" % (pipeline_subtask.pk, input_dp.filename.split('_', 1)[1]) + else: + return "L%s_%s" % (pipeline_subtask.pk, input_dp.filename) + + output_dataproducts = [Dataproduct(filename=output_dataproduct_filename(input_dp), + directory=directory, + dataformat=dataformat, + datatype=datatype, + producer=pipeline_subtask_output, + specifications_doc=input_dp.specifications_doc, + specifications_template=dataproduct_specifications_template, + feedback_doc=get_default_json_object_for_schema(dataproduct_feedback_template.schema), + feedback_template=dataproduct_feedback_template, + sap=input_dp.sap, + global_identifier=None) for input_dp in input_dataproducts] + + # create the dataproducts + output_dataproducts = _bulk_create_dataproducts_with_global_identifiers(output_dataproducts) + pipeline_subtask_output.dataproducts.set(output_dataproducts) + + transforms = [DataproductTransform(input=input_dp, output=output_dp, identity=False) for input_dp,output_dp in zip(input_dataproducts, output_dataproducts)] + DataproductTransform.objects.bulk_create(transforms) + + return output_dataproducts + +def _create_pulsar_pipeline_output_dataproducts_and_transforms(pipeline_subtask: Subtask, input_dataproducts: list): + # select subtask output the new dataproducts will be linked to + pipeline_subtask_output = pipeline_subtask.outputs.first() # TODO: if we have several, how to map input to output? + + dataformat = Dataformat.objects.get(value="pulp analysis") + datatype = Datatype.objects.get(value="pulsar profile") + dataproduct_specifications_template = DataproductSpecificationsTemplate.objects.get(name="time series") + dataproduct_feedback_template = DataproductFeedbackTemplate.objects.get(name="empty") + + directory = _output_root_directory(pipeline_subtask) + "pulp/" + + # ----- output tarball per input dataproduct + # input:output mapping is 1:1 + output_dataproducts = [Dataproduct(filename="%s.tar" % (splitext(input_dp.filename)[0],), # .h5 -> .tar + directory=directory+("cs/" if input_dp.specifications_doc["coherent"] else "is/"), + dataformat=dataformat, + datatype=datatype, + producer=pipeline_subtask_output, + specifications_doc=input_dp.specifications_doc, + specifications_template=dataproduct_specifications_template, + feedback_doc=get_default_json_object_for_schema(dataproduct_feedback_template.schema), + feedback_template=dataproduct_feedback_template, + sap=input_dp.sap, + global_identifier=None) for input_dp in input_dataproducts] + + # create the dataproducts + output_dataproducts = _bulk_create_dataproducts_with_global_identifiers(output_dataproducts) + pipeline_subtask_output.dataproducts.set(output_dataproducts) + + transforms = [DataproductTransform(input=input_dp, output=output_dp, identity=False) for input_dp,output_dp in zip(input_dataproducts, output_dataproducts)] + DataproductTransform.objects.bulk_create(transforms) + + # ----- summary tarballs + # there is a tarball for each observation id and for cs and is separately, a tarball will be produced + + dataformat = Dataformat.objects.get(value="pulp summary") + datatype = Datatype.objects.get(value="quality") + dataproduct_specifications_template = DataproductSpecificationsTemplate.objects.get(name="pulp summary") + dataproduct_feedback_template = DataproductFeedbackTemplate.objects.get(name="empty") + + def dp_obsid(dataproduct): + """ Return the obsid of the dataproduct. """ + + # we parse the filename, because that's what pulp does, too + return dataproduct.filename.split("_")[0] + + # construct how input dataproducts map onto the summaries + # we use (obsid, coherent) as key, as those are the distinguishing characteristics of a summary. + summary_mapping = {dp: (dp_obsid(dp), dp.specifications_doc["coherent"]) for dp in input_dataproducts} + summaries = set(summary_mapping.values()) + + summary_dataproducts = {(obsid, is_coherent): Dataproduct(filename="L%s_summary%s.tar" % (obsid, "CS" if is_coherent else "IS"), + directory=directory+("cs/" if is_coherent else "is/"), + dataformat=dataformat, + datatype=datatype, + producer=pipeline_subtask_output, + specifications_doc={ "coherent": is_coherent, "identifiers": { "obsid": obsid } }, + specifications_template=dataproduct_specifications_template, + feedback_doc=get_default_json_object_for_schema(dataproduct_feedback_template.schema), + feedback_template=dataproduct_feedback_template, + sap=None, # TODO: Can we say anything here, as summaries cover all SAPs + global_identifier=None) for (obsid, is_coherent) in summaries} + + # create the dataproducts + _bulk_create_dataproducts_with_global_identifiers(summary_dataproducts.values()) + pipeline_subtask_output.dataproducts.add(*summary_dataproducts.values()) + + # populate the transform, each input_dp is input for its corresponding summary + transforms = [DataproductTransform(input=input_dp, output=summary_dataproducts[(obsid, is_coherent)], identity=False) for (input_dp, (obsid, is_coherent)) in summary_mapping.items()] + DataproductTransform.objects.bulk_create(transforms) + + return output_dataproducts + def schedule_pipeline_subtask(pipeline_subtask: Subtask): ''' Schedule the given pipeline_subtask This method should typically be called upon the event of an predecessor (observation) subtask being finished. @@ -1479,13 +1628,9 @@ def schedule_pipeline_subtask(pipeline_subtask: Subtask): raise SubtaskSchedulingSpecificationException("Cannot schedule subtask id=%d type=%s because it has no input(s)" % (pipeline_subtask.pk, pipeline_subtask.specifications_template.type)) - # TODO: use existing and reasonable selection and specification templates for output when we have those, for now, use "empty" - dataproduct_specifications_template = DataproductSpecificationsTemplate.objects.get(name="visibilities") - dataproduct_feedback_template = DataproductFeedbackTemplate.objects.get(name="empty") - # iterate over all inputs + input_dataproducts = [] for pipeline_subtask_input in pipeline_subtask.inputs.all(): - # select and set input dataproducts that meet the filter defined in selection_doc dataproducts = [dataproduct for dataproduct in pipeline_subtask_input.producer.dataproducts.all() if specifications_doc_meets_selection_doc(dataproduct.specifications_doc, pipeline_subtask_input.selection_doc)] @@ -1496,47 +1641,20 @@ def schedule_pipeline_subtask(pipeline_subtask: Subtask): pipeline_subtask_input.id)) pipeline_subtask_input.dataproducts.set(dataproducts) + input_dataproducts.extend(dataproducts) - # select subtask output the new dataproducts will be linked to - pipeline_subtask_output = pipeline_subtask.outputs.first() # TODO: if we have several, how to map input to output? - - # step 3: create output dataproducts, and link these to the output - # TODO: create them from the spec, instead of "copying" the input filename - dataformat = Dataformat.objects.get(value="MeasurementSet") - input_dps = list(pipeline_subtask_input.dataproducts.all()) - dp_global_identifiers = SIPidentifier.objects.bulk_create([SIPidentifier(source="TMSS") for _ in input_dps]) - output_dp_objects = [] - for input_dp, dp_global_identifier in zip(input_dps, dp_global_identifiers): - if '_' in input_dp.filename and input_dp.filename.startswith('L'): - filename = "L%s_%s" % (pipeline_subtask.pk, input_dp.filename.split('_', 1)[1]) - else: - filename = "L%s_%s" % (pipeline_subtask.pk, input_dp.filename) - - output_dp = Dataproduct(filename=filename, - directory=input_dp.directory.replace(str(pipeline_subtask_input.producer.subtask.pk), str(pipeline_subtask.pk)), - dataformat=dataformat, - datatype=Datatype.objects.get(value="visibilities"), # todo: is this correct? - producer=pipeline_subtask_output, - specifications_doc=input_dp.specifications_doc, - specifications_template=dataproduct_specifications_template, - feedback_doc=get_default_json_object_for_schema(dataproduct_feedback_template.schema), - feedback_template=dataproduct_feedback_template, - sap=input_dp.sap, - global_identifier=dp_global_identifier) - output_dp_objects.append(output_dp) - - output_dps = Dataproduct.objects.bulk_create(output_dp_objects) - pipeline_subtask_output.dataproducts.set(output_dps) - - transforms = [DataproductTransform(input=input_dp, output=output_dp, identity=False) for input_dp,output_dp in zip(input_dps, output_dps)] - DataproductTransform.objects.bulk_create(transforms) + # step 3: create output dataproducts, and link these to the output + if pipeline_subtask.specifications_template.name == "preprocessing pipeline": + _create_preprocessing_output_dataproducts_and_transforms(pipeline_subtask, input_dataproducts) + elif pipeline_subtask.specifications_template.name == "pulsar pipeline": + _create_pulsar_pipeline_output_dataproducts_and_transforms(pipeline_subtask, input_dataproducts) - # step 4: resource assigner (if possible) - assign_or_unassign_resources(pipeline_subtask) + # step 4: resource assigner (if possible) + assign_or_unassign_resources(pipeline_subtask) - # step 5: set state to SCHEDULED (resulting in the qaservice to pick this subtask up and run it) - pipeline_subtask.state = SubtaskState.objects.get(value=SubtaskState.Choices.SCHEDULED.value) - pipeline_subtask.save() + # step 5: set state to SCHEDULED (resulting in the qaservice to pick this subtask up and run it) + pipeline_subtask.state = SubtaskState.objects.get(value=SubtaskState.Choices.SCHEDULED.value) + pipeline_subtask.save() return pipeline_subtask @@ -1749,11 +1867,6 @@ def schedule_independent_subtasks_in_task_blueprint(task_blueprint: TaskBlueprin def _generate_subtask_specs_from_preprocessing_task_specs(preprocessing_task_specs, default_subtask_specs): - # todo: check that this is actually how these need to be translated - # todo: especially check when defaults are NOT supposed to be set because the task implies to not include them - - # todo: set subtask demixer properties "baselines": "CS*,RS*&" - subtask_specs = default_subtask_specs subtask_specs['storagemanager'] = preprocessing_task_specs['storagemanager'] @@ -1791,6 +1904,57 @@ def _generate_subtask_specs_from_preprocessing_task_specs(preprocessing_task_spe return subtask_specs +def _generate_subtask_specs_from_pulsar_pipeline_task_specs(pipeline_task_specs, default_subtask_specs): + subtask_specs = {} + + # Pulsar to fold + if pipeline_task_specs["pulsar"]["strategy"] == "manual": + # pulsar is specified explicitly + subtask_specs["pulsar"] = pipeline_task_specs["pulsar"]["name"] + else: + # search for the pulsar (f.e. in a library, based on the SAP direction) + subtask_specs["pulsar"] = pipeline_task_specs["pulsar"]["strategy"] + + subtask_specs["single_pulse"] = pipeline_task_specs["single_pulse_search"] + + # PRESTO + presto_specs = pipeline_task_specs["presto"] + subtask_specs["presto"] = {} + subtask_specs["presto"]["2bf2fits_extra_opts"] = "-nsamples={samples_per_block}".format(**presto_specs["input"]) + subtask_specs["presto"]["decode_nblocks"] = presto_specs["input"]["nr_blocks"] + subtask_specs["presto"]["decode_sigma"] = presto_specs["input"]["decode_sigma"] + subtask_specs["presto"]["nofold"] = not presto_specs["fold_profile"] + subtask_specs["presto"]["skip_prepfold"] = not presto_specs["prepfold"] + subtask_specs["presto"]["rrats"] = presto_specs["rrats"]["enabled"] + subtask_specs["presto"]["rrats_dm_range"] = presto_specs["rrats"]["dm_range"] + subtask_specs["presto"]["prepdata_extra_opts"] = "" + subtask_specs["presto"]["prepfold_extra_opts"] = "" + subtask_specs["presto"]["prepsubband_extra_opts"] = "" + subtask_specs["presto"]["rfifind_extra_opts"] = "" + + # DSPSR + dspsr_specs = pipeline_task_specs["dspsr"] + subtask_specs["dspsr"] = {} + subtask_specs["dspsr"]["skip_dspsr"] = not dspsr_specs["enabled"] + subtask_specs["dspsr"]["digifil_extra_opts"] = "-D {dm} -t {integration_time} -f {frequency_channels}{dedisperse}".format( + **dspsr_specs["digifil"], + dedisperse = ":D" if dspsr_specs["digifil"]["coherent_dedispersion"] else "") + subtask_specs["dspsr"]["nopdmp"] = not dspsr_specs["optimise_period_dm"] + subtask_specs["dspsr"]["norfi"] = not dspsr_specs["rfi_excision"] + subtask_specs["dspsr"]["tsubint"] = dspsr_specs["subintegration_length"] + subtask_specs["dspsr"]["dspsr_extra_opts"] = "" + + # output + output_specs = pipeline_task_specs["output"] + subtask_specs["output"] = {} + subtask_specs["output"]["raw_to_8bit"] = output_specs["quantisation"]["enabled"] + subtask_specs["output"]["8bit_conversion_sigma"] = output_specs["quantisation"]["scale"] + subtask_specs["output"]["skip_dynamic_spectrum"] = not output_specs["dynamic_spectrum"]["enabled"] + subtask_specs["output"]["dynamic_spectrum_time_average"] = output_specs["dynamic_spectrum"]["time_average"] + + return subtask_specs + + def specifications_doc_meets_selection_doc(specifications_doc, selection_doc): """ Filter specs by selection. This requires the specification_doc to... diff --git a/SAS/TMSS/backend/test/t_adapter.py b/SAS/TMSS/backend/test/t_adapter.py index 7e6584db476356ab17752eec2328b5958fcb2396..5294abcc79b5e8a86fb6e718145964d71707cb08 100755 --- a/SAS/TMSS/backend/test/t_adapter.py +++ b/SAS/TMSS/backend/test/t_adapter.py @@ -45,14 +45,14 @@ rest_data_creator = TMSSRESTTestDataCreator(BASE_URL, AUTH) from lofar.sas.tmss.tmss.tmssapp import models from lofar.sas.tmss.tmss.exceptions import SubtaskInvalidStateException from lofar.sas.tmss.tmss.tmssapp.adapters.parset import convert_to_parset, convert_to_parset_dict -from lofar.common.json_utils import get_default_json_object_for_schema +from lofar.common.json_utils import get_default_json_object_for_schema, add_defaults_to_json_object_for_schema from lofar.sas.tmss.tmss.tmssapp.adapters.sip import generate_sip_for_dataproduct from lofar.sas.tmss.tmss.tmssapp.adapters.feedback import append_to_subtask_raw_feedback, process_feedback_into_subtask_dataproducts, process_feedback_for_subtask_and_set_to_finished_if_complete, reprocess_raw_feedback_for_subtask_and_set_to_finished_if_complete from lofar.lta.sip import constants from lofar.parameterset import parameterset from lofar.sas.tmss.test.test_utils import set_subtask_state_following_allowed_transitions -from lofar.sas.resourceassignment.resourceassignmentestimator.resource_estimators import ObservationResourceEstimator +from lofar.sas.resourceassignment.resourceassignmentestimator.resource_estimators import ObservationResourceEstimator, PulsarPipelineResourceEstimator class ObservationParsetAdapterTest(unittest.TestCase): @@ -202,6 +202,29 @@ class ObservationParsetAdapterTest(unittest.TestCase): self.assertEqual(nr_is_files, estimations["estimates"][1]["output_files"]["is"][0]["properties"]["nr_of_is_files"] * estimations["estimates"][1]["resource_count"]) self.assertEqual(4, estimations["estimates"][1]["output_files"]["is"][0]["properties"]["nr_of_is_stokes"]) +class PulsarPipelineParsetAdapterTest(unittest.TestCase): + def create_subtask(self, specifications_doc={}): + subtask_template = models.SubtaskTemplate.objects.get(name='pulsar pipeline') + specifications_doc = add_defaults_to_json_object_for_schema(specifications_doc, subtask_template.schema) + + subtask_data = Subtask_test_data(subtask_template=subtask_template, specifications_doc=specifications_doc) + subtask:models.Subtask = models.Subtask.objects.create(**subtask_data) + + subtask.task_blueprints.set([models.TaskBlueprint.objects.create(**TaskBlueprint_test_data())]) + subtask_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask)) + dataproduct:models.Dataproduct = models.Dataproduct.objects.create(**Dataproduct_test_data(producer=subtask_output)) + return subtask + + def test_pulp(self): + subtask = self.create_subtask() + parset = convert_to_parset_dict(subtask) + logger.info("test_pulp parset:",parset) + + self.assertEqual(True, parset["Observation.DataProducts.Output_Pulsar.enabled"]) + + # TODO: ResourceEstimator needs a predecessor observation with dataproducts, so we forgo that for now. + + class SIPadapterTest(unittest.TestCase): def test_simple_sip_generate_from_dataproduct(self): """ @@ -383,7 +406,7 @@ _isCobalt=T set_subtask_state_following_allowed_transitions(subtask_obs, 'finishing') subtask_obs_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_obs)) - subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) subtask_pipe: models.Subtask = models.Subtask.objects.create(**subtask_data) set_subtask_state_following_allowed_transitions(subtask_pipe, 'finishing') subtask_pipe_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_pipe)) @@ -417,7 +440,7 @@ _isCobalt=T set_subtask_state_following_allowed_transitions(subtask_obs, 'finishing') subtask_obs_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_obs)) - subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) subtask_pipe: models.Subtask = models.Subtask.objects.create(**subtask_data) set_subtask_state_following_allowed_transitions(subtask_pipe, 'finishing') subtask_pipe_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_pipe)) @@ -461,7 +484,7 @@ _isCobalt=T set_subtask_state_following_allowed_transitions(subtask_obs, 'finishing') subtask_obs_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_obs)) - subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) subtask_pipe: models.Subtask = models.Subtask.objects.create(**subtask_data) set_subtask_state_following_allowed_transitions(subtask_pipe, 'finishing') subtask_pipe_output = models.SubtaskOutput.objects.create(**SubtaskOutput_test_data(subtask=subtask_pipe)) diff --git a/SAS/TMSS/backend/test/t_scheduling.py b/SAS/TMSS/backend/test/t_scheduling.py index 577c82bdceebd8eef12cdd9e64e5b468e60dc58b..2772564e229298bcbc88791c7f9c23ed0acf9e23 100755 --- a/SAS/TMSS/backend/test/t_scheduling.py +++ b/SAS/TMSS/backend/test/t_scheduling.py @@ -83,10 +83,10 @@ def create_subtask_object_for_testing(subtask_type_value, subtask_state_value): """ Helper function to create a subtask object for testing with given subtask value and subtask state value as string (no object) - For these testcases 'pipeline control' and 'observation control' is relevant + For these testcases 'preprocessing pipeline' and 'observation control' is relevant """ task_blueprint = models.TaskBlueprint.objects.create(**TaskBlueprint_test_data(specifications_template=models.TaskTemplate.objects.get(name='target observation' if subtask_type_value=='observation' else 'preprocessing pipeline'))) - subtask_template_obj = models.SubtaskTemplate.objects.get(name="%s control" % subtask_type_value) + subtask_template_obj = models.SubtaskTemplate.objects.get(name='observation control' if subtask_type_value=='observation' else 'preprocessing pipeline') subtask_data = Subtask_test_data(subtask_template=subtask_template_obj) subtask = models.Subtask.objects.create(**subtask_data) subtask.task_blueprints.set([task_blueprint]) @@ -186,11 +186,12 @@ class SchedulingTest(unittest.TestCase): self.assertEqual([], duplicate_dataproduct_specification_docs) def test_schedule_observation_subtask_with_enough_resources_available(self): - spec = { "stations": { "digital_pointings": [ { "subbands": [0] } ] } } + spec = { "stations": { "digital_pointings": [ { "subbands": [0] } ] }, + "COBALT": { "correlator": { "enabled": True } } } self._test_schedule_observation_subtask_with_enough_resources_available(spec) def test_schedule_beamformer_observation_subtask_with_enough_resources_available(self): - spec = { + spec = { "stations": { "digital_pointings": [ { "name": "target0", "subbands": [0] } ] }, "COBALT": { "version": 1, @@ -293,6 +294,7 @@ class SchedulingTest(unittest.TestCase): with tmss_test_env.create_tmss_client() as client: subtask_template = client.get_subtask_template("observation control") spec = get_default_json_object_for_schema(subtask_template['schema']) + spec['COBALT']['correlator']['enabled'] = True spec['stations']['digital_pointings'][0]['subbands'] = [0] subtask = self._create_target_observation_subtask(spec) subtask_id = subtask['id'] @@ -315,6 +317,7 @@ class SchedulingTest(unittest.TestCase): with tmss_test_env.create_tmss_client() as client: subtask_template = client.get_subtask_template("observation control") spec = get_default_json_object_for_schema(subtask_template['schema']) + spec['COBALT']['correlator']['enabled'] = True spec['stations']['digital_pointings'][0]['subbands'] = [0] spec['stations']['station_list'] = ['CS001', 'CS002', 'CS401'] subtask = self._create_target_observation_subtask(spec) @@ -340,6 +343,7 @@ class SchedulingTest(unittest.TestCase): with tmss_test_env.create_tmss_client() as client: subtask_template = client.get_subtask_template("observation control") spec = get_default_json_object_for_schema(subtask_template['schema']) + spec['COBALT']['correlator']['enabled'] = True spec['stations']['digital_pointings'][0]['subbands'] = [0] spec['stations']['station_list'] = ['CS001', 'CS002', 'CS003'] subtask = self._create_target_observation_subtask(spec) @@ -349,33 +353,29 @@ class SchedulingTest(unittest.TestCase): self.assertEqual('scheduled', subtask['state_value']) self.assertEqual('scheduled', tmss_test_env.ra_test_environment.radb.getTask(tmss_id=subtask_id)['status']) - def test_schedule_pipeline_subtask_with_enough_resources_available(self): - with tmss_test_env.create_tmss_client() as client: + def _setup_observation_and_pipeline(self, client, obs_spec, dataproduct_properties, pipeline_task_template_name, pipeline_subtask_template_name, pipeline_subtask_spec): cluster_url = client.get_path_as_json_object('/cluster/1')['url'] # setup: first create an observation, so the pipeline can have input. - subtask_template = client.get_subtask_template("observation control") - obs_spec = get_default_json_object_for_schema(subtask_template['schema']) - obs_spec['stations']['digital_pointings'][0]['subbands'] = [0] - obs_subtask = self._create_target_observation_subtask(obs_spec) - obs_subtask_id = obs_subtask['id'] - obs_subtask_output_url = client.get_path_as_json_object('/subtask_output?subtask=%s'%obs_subtask_id)[0]['url'] - test_data_creator.post_data_and_get_url(test_data_creator.Dataproduct(filename="L%s_SB000.MS"%obs_subtask['id'], - specifications_doc={"sap": "target0", "subband": 0 }, - subtask_output_url=obs_subtask_output_url), '/dataproduct/') - - obs_subtask = client.schedule_subtask(obs_subtask_id) - - for state in ('starting', 'started', 'finishing', 'finished'): - client.set_subtask_status(obs_subtask_id, state) - + obs_task_blueprint_data = test_data_creator.TaskBlueprint(template_url=client.get_task_template(name="target observation")['url']) + obs_task_blueprint = test_data_creator.post_data_and_get_response_as_json_object(obs_task_blueprint_data, '/task_blueprint/') + obs_subtask_template = client.get_subtask_template("observation control") + + obs_subtask_data = test_data_creator.Subtask(specifications_template_url=obs_subtask_template['url'], + specifications_doc=obs_spec, + cluster_url=cluster_url, + task_blueprint_urls=[obs_task_blueprint['url']]) + obs_subtask = test_data_creator.post_data_and_get_response_as_json_object(obs_subtask_data, '/subtask/') + obs_subtask_output_url = test_data_creator.post_data_and_get_url(test_data_creator.SubtaskOutput(subtask_url=obs_subtask['url'], + task_blueprint_url=obs_task_blueprint['url']), '/subtask_output/') + test_data_creator.post_data_and_get_url(test_data_creator.Dataproduct(**dataproduct_properties, subtask_output_url=obs_subtask_output_url), '/dataproduct/') # now create the pipeline... - pipe_task_blueprint_data = test_data_creator.TaskBlueprint(template_url=client.get_task_template(name="preprocessing pipeline")['url']) + pipe_task_blueprint_data = test_data_creator.TaskBlueprint(template_url=client.get_task_template(name=pipeline_task_template_name)['url']) pipe_task_blueprint = test_data_creator.post_data_and_get_response_as_json_object(pipe_task_blueprint_data, '/task_blueprint/') - pipe_subtask_template = client.get_subtask_template("pipeline control") - pipe_spec = get_default_json_object_for_schema(pipe_subtask_template['schema']) + pipe_subtask_template = client.get_subtask_template(pipeline_subtask_template_name) + pipe_spec = add_defaults_to_json_object_for_schema(pipeline_subtask_spec, pipe_subtask_template['schema']) pipe_subtask_data = test_data_creator.Subtask(specifications_template_url=pipe_subtask_template['url'], specifications_doc=pipe_spec, @@ -388,7 +388,61 @@ class SchedulingTest(unittest.TestCase): test_data_creator.post_data_and_get_url(test_data_creator.SubtaskOutput(subtask_url=pipe_subtask['url'], task_blueprint_url=pipe_task_blueprint['url']), '/subtask_output/') + for predecessor in client.get_subtask_predecessors(pipe_subtask['id']): + for state in ('defined', 'scheduling', 'scheduled', 'starting', 'started', 'finishing', 'finished'): + client.set_subtask_status(predecessor['id'], state) + client.set_subtask_status(pipe_subtask['id'], 'defined') + + return pipe_subtask + + def test_schedule_preprocessing_pipeline_subtask_with_enough_resources_available(self): + with tmss_test_env.create_tmss_client() as client: + obs_subtask_template = client.get_subtask_template("observation control") + obs_spec = get_default_json_object_for_schema(obs_subtask_template['schema']) + obs_spec['stations']['digital_pointings'][0]['subbands'] = [0] + obs_spec['COBALT']['correlator']['enabled'] = True + + pipe_subtask = self._setup_observation_and_pipeline(client, + obs_spec, + {"filename": "L123456_SB000.MS", + "specifications_doc": {"sap": "target0", "subband": 0 } }, + "preprocessing pipeline", + "preprocessing pipeline", + {}) + + subtask = client.schedule_subtask(pipe_subtask['id']) + + self.assertEqual('scheduled', subtask['state_value']) + self.assertEqual('scheduled', tmss_test_env.ra_test_environment.radb.getTask(tmss_id=pipe_subtask['id'])['status']) + + def test_schedule_pulsar_pipeline_subtask_with_enough_resources_available(self): + with tmss_test_env.create_tmss_client() as client: + obs_subtask_template = client.get_subtask_template("observation control") + obs_spec = { + "stations": { "digital_pointings": [ { "name": "target0", "subbands": [0] } ] }, + "COBALT": { + "version": 1, + "correlator": { "enabled": False }, + "beamformer": { + "tab_pipelines": [ + { + "SAPs": [ { "name": "target0", "tabs": [ { "coherent": False }, { "coherent": True } ] } ] + } + ] + } + } + } + obs_spec = add_defaults_to_json_object_for_schema(obs_spec,obs_subtask_template['schema']) + + pipe_subtask = self._setup_observation_and_pipeline(client, + obs_spec, + {"filename": "L123456_SAP000_B000_S0_P000.h5", + "specifications_doc": { "sap": "target0", "coherent": True, "identifiers": { "sap_index": 0, "tab_index": 0, "pipeline_index": 0, "part_index": 0, "stokes_index": 0 } } }, + "pulsar pipeline", + "pulsar pipeline", + {}) + subtask = client.schedule_subtask(pipe_subtask['id']) self.assertEqual('scheduled', subtask['state_value']) diff --git a/SAS/TMSS/backend/test/t_scheduling_units.py b/SAS/TMSS/backend/test/t_scheduling_units.py index 98234e7d6bee7b43c22f395e402196538683b288..af237301a8991c0226b10b5eee3a251bbc652cf6 100644 --- a/SAS/TMSS/backend/test/t_scheduling_units.py +++ b/SAS/TMSS/backend/test/t_scheduling_units.py @@ -87,7 +87,7 @@ class SchedulingUnitBlueprintStateTest(unittest.TestCase): task_pipe.specifications_template = models.TaskTemplate.objects.get(type=models.TaskType.Choices.PIPELINE.value) task_pipe.save() subtask_data = Subtask_test_data(state=models.SubtaskState.objects.get(value="defined"), - subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) if "pipeline" in skip_create_subtask: subtask_pipe = None else: @@ -102,10 +102,11 @@ class SchedulingUnitBlueprintStateTest(unittest.TestCase): task_ingest = models.TaskBlueprint.objects.create(**task_data) task_ingest.specifications_template = my_test_template task_ingest.save() - # There is no template defined for ingest yet ...but I can use pipeline control, only the template type matters + # There is no template defined for ingest yet ...but I can use preprocessing pipeline, only the template type matters # ....should become other thing in future but for this test does not matter subtask_data = Subtask_test_data(state=models.SubtaskState.objects.get(value="defined"), - subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) + if "ingest" in skip_create_subtask: subtask_ingest = None else: diff --git a/SAS/TMSS/backend/test/t_subtasks.py b/SAS/TMSS/backend/test/t_subtasks.py index a59c19f89859090eac56e8b9d9d43425389eedeb..0faaec26e42863a8183d2a6fbb0226cbc3805723 100755 --- a/SAS/TMSS/backend/test/t_subtasks.py +++ b/SAS/TMSS/backend/test/t_subtasks.py @@ -215,7 +215,7 @@ class SubTasksCreationFromTaskBluePrint(unittest.TestCase): create_relation_task_blueprint_object_for_testing(task_blueprint, task_blueprint_preprocessing) subtask = create_preprocessing_subtask_from_task_blueprint(task_blueprint_preprocessing) self.assertEqual("defined", str(subtask.state)) - self.assertEqual("pipeline control", str(subtask.specifications_template.name)) + self.assertEqual("preprocessing pipeline", str(subtask.specifications_template.name)) self.assertEqual("pipeline", str(subtask.specifications_template.type)) def test_create_subtasks_from_task_blueprint_succeed(self): @@ -354,6 +354,88 @@ class SubTasksCreationFromTaskBluePrintCalibrator(unittest.TestCase): self.assertIn("results in 600 total subbands, but only 488 are possible", str(cm.exception)) +class SubTasksCreationFromTaskBluePrintCalibrator(unittest.TestCase): + + def test_create_sequence_of_subtask_from_task_blueprint_calibrator_failure(self): + """ + Create multiple subtasks from a task blueprint when task is a calibrator + Check that exception should occur due too missing related target observation + """ + task_blueprint = create_task_blueprint_object_for_testing(task_template_name="calibrator observation") + with self.assertRaises(SubtaskCreationException): + create_observation_control_subtask_from_task_blueprint(task_blueprint) + + @unittest.skip("JS 2020-09-08: Cannot reproduce SubtaskCreationException. How is this test supposed to work??") + def test_create_sequence_of_subtask_from_task_blueprint_calibrator(self): + """ + Create multiple subtasks from a task blueprint when task is a calibrator and is related to task blueprint + of a target observation + Check that exception should occur due too missing pointing setting in target observation, + the calibrator default is AutoSelect=True + Check NO exception, when AutoSelect=False + """ + cal_task_blueprint = create_task_blueprint_object_for_testing(task_template_name="calibrator observation") + target_task_blueprint = create_task_blueprint_object_for_testing() + create_scheduling_relation_task_blueprint_for_testing(cal_task_blueprint, target_task_blueprint) + + with self.assertRaises(SubtaskCreationException): + create_observation_control_subtask_from_task_blueprint(cal_task_blueprint) + + cal_task_blueprint.specifications_doc['autoselect'] = False + cal_task_blueprint.specifications_doc['pointing']['angle1'] = 1.111 + cal_task_blueprint.specifications_doc['pointing']['angle2'] = 2.222 + subtask = create_observation_control_subtask_from_task_blueprint(cal_task_blueprint) + self.assertEqual("defined", str(subtask.state)) + self.assertEqual("observation control", str(subtask.specifications_template.name)) + self.assertEqual("observation", str(subtask.specifications_template.type)) + self.assertEqual('J2000', subtask.specifications_doc['stations']['analog_pointing']['direction_type']) + self.assertEqual(1.111, subtask.specifications_doc['stations']['analog_pointing']['angle1']) + self.assertEqual(2.222, subtask.specifications_doc['stations']['analog_pointing']['angle2']) + + +class SubTaskCreationFromTaskBlueprintPipelines(unittest.TestCase): + + def test_create_subtask_from_task_blueprint_preprocessing_pipeline(self): + """ + Test that a preprocessing task blueprint can be turned into a preprocessing pipeline subtask + """ + + # setup + observation_task_blueprint = create_task_blueprint_object_for_testing() + pipeline_task_blueprint = create_task_blueprint_object_for_testing(task_template_name="preprocessing pipeline") + create_relation_task_blueprint_object_for_testing(observation_task_blueprint, pipeline_task_blueprint) + + create_observation_control_subtask_from_task_blueprint(observation_task_blueprint) + + # trigger + subtask = create_preprocessing_subtask_from_task_blueprint(pipeline_task_blueprint) + + # assert + self.assertEqual("defined", str(subtask.state)) + self.assertEqual("preprocessing pipeline", str(subtask.specifications_template.name)) + self.assertEqual(models.SubtaskType.Choices.PIPELINE.value, str(subtask.specifications_template.type)) + + def test_create_subtask_from_task_blueprint_preprocessing_pipeline(self): + """ + Test that ia pulsar task blueprint can be turned into a pulsar pipeline subtask + """ + + # setup + observation_task_blueprint = create_task_blueprint_object_for_testing() + pipeline_task_blueprint = create_task_blueprint_object_for_testing(task_template_name="pulsar pipeline") + create_relation_task_blueprint_object_for_testing(observation_task_blueprint, pipeline_task_blueprint) + + create_observation_control_subtask_from_task_blueprint(observation_task_blueprint) + + # trigger + subtask = create_pulsar_pipeline_subtask_from_task_blueprint(pipeline_task_blueprint) + + # assert + self.assertEqual("defined", str(subtask.state)) + self.assertEqual("pulsar pipeline", str(subtask.specifications_template.name)) + self.assertEqual(models.SubtaskType.Choices.PIPELINE.value, str(subtask.specifications_template.type)) + + class SubTaskCreationFromTaskBlueprintIngest(unittest.TestCase): def test_create_subtask_from_task_blueprint_ingest(self): diff --git a/SAS/TMSS/backend/test/t_tasks.py b/SAS/TMSS/backend/test/t_tasks.py index 1f7a77a95410e68f3e3d46c08658b7a51a128f1b..27dd9ebe6a90ed313b9d3817ed1113ea9c6a4408 100755 --- a/SAS/TMSS/backend/test/t_tasks.py +++ b/SAS/TMSS/backend/test/t_tasks.py @@ -272,7 +272,7 @@ class TaskBlueprintStateTest(unittest.TestCase): task_blueprint_data = TaskBlueprint_test_data(name="Task Blueprint With One Subtask") task_blueprint = models.TaskBlueprint.objects.create(**task_blueprint_data) # Create pipeline subtask related to taskblueprint - subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='pipeline control')) + subtask_data = Subtask_test_data(subtask_template=models.SubtaskTemplate.objects.get(name='preprocessing pipeline')) subtask_pipe = models.Subtask.objects.create(**subtask_data) subtask_pipe.task_blueprints.set([task_blueprint]) diff --git a/SubSystems/Online_Cobalt/test/Correlator/CMakeLists.txt b/SubSystems/Online_Cobalt/test/Correlator/CMakeLists.txt index dfd0a7e6643a1f8067f8f08b91d251418ddb6457..f80f6f44e12bd99db8e32c8900c34a85fdd1e77c 100644 --- a/SubSystems/Online_Cobalt/test/Correlator/CMakeLists.txt +++ b/SubSystems/Online_Cobalt/test/Correlator/CMakeLists.txt @@ -6,6 +6,7 @@ set(_tests tCorrelate_1sec_1st_5sb_noflagging tCorrelate_3sec_1st_5sb tCorrelate_3sec_2st_5sb + tCorrelate_3sec_2st_5sb_doppler ) foreach(_test ${_tests}) diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB0.cfloat.raw b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB0.cfloat.raw new file mode 100644 index 0000000000000000000000000000000000000000..4e7e04abd49af36ce078a4175ce6b5b1cdea3aae Binary files /dev/null and b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB0.cfloat.raw differ diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB1.cfloat.raw b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB1.cfloat.raw new file mode 100644 index 0000000000000000000000000000000000000000..4db5f517cbdc5d0a65cf413b7b818b330a7461cb Binary files /dev/null and b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB1.cfloat.raw differ diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB2.cfloat.raw b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB2.cfloat.raw new file mode 100644 index 0000000000000000000000000000000000000000..61ad1e5c09a561db249116c5ac85c461af426054 Binary files /dev/null and b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB2.cfloat.raw differ diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB3.cfloat.raw b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB3.cfloat.raw new file mode 100644 index 0000000000000000000000000000000000000000..f5fcc3ce1c4531b54004ddfa00879be1a77d1403 Binary files /dev/null and b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB3.cfloat.raw differ diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB4.cfloat.raw b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB4.cfloat.raw new file mode 100644 index 0000000000000000000000000000000000000000..f843168a4fa6517f78eda6ddb12832f35c29e1e3 Binary files /dev/null and b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.output/SB4.cfloat.raw differ diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.parset b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.parset new file mode 100644 index 0000000000000000000000000000000000000000..2be8bbb3f7778f73b8b78ec0618c4c4882f1eef2 --- /dev/null +++ b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.parset @@ -0,0 +1,4904 @@ +Cobalt.blockSize = 49152 +Cobalt.BeamFormer.CoherentStokes.nrChannelsPerSubband = 16 +Cobalt.BeamFormer.CoherentStokes.subbandsPerFile = 512 +Cobalt.BeamFormer.CoherentStokes.timeIntegrationFactor = 16 +Cobalt.BeamFormer.CoherentStokes.which = I +Cobalt.BeamFormer.IncoherentStokes.nrChannelsPerSubband = 16 +Cobalt.BeamFormer.IncoherentStokes.subbandsPerFile = 512 +Cobalt.BeamFormer.IncoherentStokes.timeIntegrationFactor = 16 +Cobalt.BeamFormer.IncoherentStokes.which = I +Cobalt.Correlator.nrBlocksPerIntegration = 1 +Cobalt.Correlator.dopplerCorrection=true +Cobalt.BeamFormer.flysEye = false +Cobalt.BeamFormer.coherentDedisperseChannels = false +Cobalt.correctBandPass = true +Cobalt.correctClocks = T +Cobalt.delayCompensation = true +OLAP.dispersionMeasure = 0 +Observation.nrBitsPerSample = 8 +Cobalt.realTime = false +Observation.AnaBeam[0].angle1 = 2.15374 +Observation.AnaBeam[0].angle2 = 0.841549 +Observation.AnaBeam[0].directionType = J2000 +Observation.AnaBeam[0].duration = 300 +Observation.AnaBeam[0].maximizeDuration = false +Observation.AnaBeam[0].rank = 1 +Observation.AnaBeam[0].startTime = 0 +Observation.AnaBeam[0].target = +Observation.Beam[0].angle1 = 2.15374 +Observation.Beam[0].angle2 = 0.841549 +Observation.Beam[0].beamletList = [] +Observation.Beam[0].directionType = J2000 +Observation.Beam[0].duration = 300 +Observation.Beam[0].maximizeDuration = false +Observation.Beam[0].momID = 0 +Observation.Beam[0].nrTabRings = 0 +Observation.Beam[0].nrTiedArrayBeams = 0 +Observation.Beam[0].startTime = 0 +Observation.Beam[0].subbandList = [24..28] +Observation.Beam[0].tabRingSize = 0 +Observation.Beam[0].target = 3c196 +Observation.Campaign.CO_I = +Observation.Campaign.PI = 'Hessels, Dr. Jason' +Observation.Campaign.contact = 'Hessels, Dr. Jason' +Observation.Campaign.name = Pulsars2 +Observation.Campaign.title = Pulsars2 +Observation.DataProducts.Output_CoherentStokes.enabled = false +Observation.DataProducts.Output_CoherentStokes.filenames = [] +Observation.DataProducts.Output_CoherentStokes.locations = [] +Observation.DataProducts.Output_Correlated.enabled = true +Observation.DataProducts.Output_Correlated.filenames = [SB0.cfloat.raw,SB1.cfloat.raw,SB2.cfloat.raw,SB3.cfloat.raw,SB4.cfloat.raw] +Observation.DataProducts.Output_Correlated.locations = [5*:.] +Observation.DataProducts.Output_IncoherentStokes.enabled = false +Observation.DataProducts.Output_IncoherentStokes.filenames = [] +Observation.DataProducts.Output_IncoherentStokes.locations = [] +Observation.Dataslots.DataslotInfo.DataslotList = [] +Observation.Dataslots.DataslotInfo.RSPBoardList = [] +Observation.Dataslots.RS106HBA.DataslotList = [0..4] +Observation.Dataslots.RS106HBA.RSPBoardList = [5*0] +Observation.KSPType = surveys +Observation.ObsID = 76966 +Observation.ObserverName = unknown +Observation.ProjectName = unknown +Observation.antennaArray = HBA +Observation.antennaSet = HBA_DUAL +Observation.bandFilter = HBA_110_190 +Observation.beamList = [5*0] +Cobalt.Correlator.nrChannelsPerSubband = 16 +Observation.nrAnaBeams = 1 +Observation.nrBeams = 1 +Observation.nrPolarisations = 2 +Observation.referencePhaseCenter = [3826577.066,461022.948,5064892.786] +Observation.rspBoardList = [5*0] +Observation.rspSlotList = [5*0] +Observation.sampleClock = 200 +Observation.samplesPerSecond = 196608 +Observation.startTime = '2012-11-21 12:47:00' +Observation.stopTime = '2012-11-21 12:47:03' +PIC.Core.RS106HBA.clockCorrectionTime = 0 +PIC.Core.RS106HBA.phaseCenter = [3829205.598,469142.533,5062181.002] +PIC.Core.RS106HBA.position = [3829205.598,469142.533,5062181.002] +PIC.Core.RS106HBA.RSP.sources = [file:/opt/shared/test_sets/3sec/rs106.udp] +_DPname = LOFAR_ObsSW_TempObs0024 +Observation.VirtualInstrument.stationList = [RS106,RS205] +Observation.Dataslots.RS205HBA.DataslotList = [0..4] +Observation.Dataslots.RS205HBA.RSPBoardList = [5*0] +PIC.Core.RS205HBA.clockCorrectionTime = 0 +PIC.Core.RS205HBA.phaseCenter = [3831479.670,463487.529,5060989.903] +PIC.Core.RS205HBA.position = [3831479.670,463487.529,5060989.903] +PIC.Core.RS205HBA.RSP.sources = [file:/opt/shared/test_sets/3sec/rs205.udp] +Cobalt.Kernels.BeamFormerKernel.dumpOutput = false +Cobalt.Kernels.BeamFormerTransposeKernel.dumpOutput = false +Cobalt.Kernels.CoherentStokesKernel.dumpOutput = false +Cobalt.Kernels.CorrelatorKernel.dumpOutput = false +Cobalt.Kernels.DelayAndBandPassKernel.dumpOutput = false +Cobalt.Kernels.FIR_FilterKernel.dumpOutput = false +Cobalt.Kernels.IntToFloatKernel.dumpOutput = false +PIC.Core.CS001LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_70.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_70.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_70.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_70.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_90.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_10_90.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_90.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_INNER.LBA_30_90.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_70.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_70.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_70.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_70.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_90.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_10_90.delay.Y = 4.655852e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_90.delay.X = 4.656295e-06 +PIC.Core.CS001LBA.LBA_OUTER.LBA_30_90.delay.Y = 4.655852e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_110_190.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_110_190.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_170_230.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_170_230.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_210_250.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_ZERO.HBA_210_250.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_110_190.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_110_190.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_170_230.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_170_230.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_210_250.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL.HBA_210_250.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 4.656321e-06 +PIC.Core.CS001HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 4.655847e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_110_190.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_110_190.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_170_230.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_170_230.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_ONE.HBA_210_250.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_ONE.HBA_210_250.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_110_190.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_110_190.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_170_230.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_170_230.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_210_250.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL.HBA_210_250.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 4.656269e-06 +PIC.Core.CS001HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 4.655857e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_110_190.delay.X = 4.656295e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_110_190.delay.Y = 4.655852e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_170_230.delay.X = 4.656295e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_170_230.delay.Y = 4.655852e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS001HBA.HBA_JOINED.HBA_210_250.delay.X = 4.656295e-06 +PIC.Core.CS001HBA.HBA_JOINED.HBA_210_250.delay.Y = 4.655852e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_70.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_70.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_70.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_70.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_90.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_10_90.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_90.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_INNER.LBA_30_90.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_70.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_70.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_70.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_70.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_90.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_10_90.delay.Y = 6.876581e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_90.delay.X = 6.876039e-06 +PIC.Core.CS002LBA.LBA_OUTER.LBA_30_90.delay.Y = 6.876581e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_110_190.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_110_190.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_170_230.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_170_230.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_210_250.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_ZERO.HBA_210_250.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_110_190.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_110_190.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_170_230.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_170_230.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_210_250.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL.HBA_210_250.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.875965e-06 +PIC.Core.CS002HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.876319e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_110_190.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_110_190.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_170_230.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_170_230.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_ONE.HBA_210_250.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_ONE.HBA_210_250.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_110_190.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_110_190.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_170_230.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_170_230.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_210_250.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL.HBA_210_250.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.876113e-06 +PIC.Core.CS002HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.876844e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_110_190.delay.X = 6.876039e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_110_190.delay.Y = 6.876581e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_170_230.delay.X = 6.876039e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_170_230.delay.Y = 6.876581e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS002HBA.HBA_JOINED.HBA_210_250.delay.X = 6.876039e-06 +PIC.Core.CS002HBA.HBA_JOINED.HBA_210_250.delay.Y = 6.876581e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_70.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_70.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_70.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_70.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_90.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_10_90.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_90.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_INNER.LBA_30_90.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_70.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_70.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_70.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_70.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_90.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_10_90.delay.Y = 5.471185e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_90.delay.X = 5.471480e-06 +PIC.Core.CS003LBA.LBA_OUTER.LBA_30_90.delay.Y = 5.471185e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_110_190.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_110_190.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_170_230.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_170_230.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_210_250.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_ZERO.HBA_210_250.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_110_190.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_110_190.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_170_230.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_170_230.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_210_250.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL.HBA_210_250.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 5.471519e-06 +PIC.Core.CS003HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 5.471004e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_110_190.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_110_190.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_170_230.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_170_230.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_ONE.HBA_210_250.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_ONE.HBA_210_250.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_110_190.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_110_190.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_170_230.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_170_230.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_210_250.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL.HBA_210_250.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 5.471440e-06 +PIC.Core.CS003HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 5.471366e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_110_190.delay.X = 5.471480e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_110_190.delay.Y = 5.471185e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_170_230.delay.X = 5.471480e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_170_230.delay.Y = 5.471185e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS003HBA.HBA_JOINED.HBA_210_250.delay.X = 5.471480e-06 +PIC.Core.CS003HBA.HBA_JOINED.HBA_210_250.delay.Y = 5.471185e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_70.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_70.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_70.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_70.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_90.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_10_90.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_90.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_INNER.LBA_30_90.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_70.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_70.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_70.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_70.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_90.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_10_90.delay.Y = 6.452039e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_90.delay.X = 6.451439e-06 +PIC.Core.CS004LBA.LBA_OUTER.LBA_30_90.delay.Y = 6.452039e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_110_190.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_110_190.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_170_230.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_170_230.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_210_250.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_ZERO.HBA_210_250.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_110_190.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_110_190.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_170_230.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_170_230.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_210_250.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL.HBA_210_250.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.451586e-06 +PIC.Core.CS004HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.451887e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_110_190.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_110_190.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_170_230.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_170_230.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_ONE.HBA_210_250.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_ONE.HBA_210_250.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_110_190.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_110_190.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_170_230.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_170_230.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_210_250.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL.HBA_210_250.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.451293e-06 +PIC.Core.CS004HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.452190e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_110_190.delay.X = 6.451439e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_110_190.delay.Y = 6.452039e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_170_230.delay.X = 6.451439e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_170_230.delay.Y = 6.452039e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS004HBA.HBA_JOINED.HBA_210_250.delay.X = 6.451439e-06 +PIC.Core.CS004HBA.HBA_JOINED.HBA_210_250.delay.Y = 6.452039e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_70.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_70.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_70.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_70.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_90.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_10_90.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_90.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_INNER.LBA_30_90.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_70.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_70.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_70.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_70.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_90.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_10_90.delay.Y = 7.102630e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_90.delay.X = 7.102005e-06 +PIC.Core.CS005LBA.LBA_OUTER.LBA_30_90.delay.Y = 7.102630e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_110_190.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_110_190.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_170_230.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_170_230.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_210_250.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_ZERO.HBA_210_250.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_110_190.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_110_190.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_170_230.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_170_230.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_210_250.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL.HBA_210_250.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.101819e-06 +PIC.Core.CS005HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.102702e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_110_190.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_110_190.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_170_230.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_170_230.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_ONE.HBA_210_250.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_ONE.HBA_210_250.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_110_190.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_110_190.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_170_230.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_170_230.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_210_250.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL.HBA_210_250.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.102190e-06 +PIC.Core.CS005HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.102558e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_110_190.delay.X = 7.102005e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_110_190.delay.Y = 7.102630e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_170_230.delay.X = 7.102005e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_170_230.delay.Y = 7.102630e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS005HBA.HBA_JOINED.HBA_210_250.delay.X = 7.102005e-06 +PIC.Core.CS005HBA.HBA_JOINED.HBA_210_250.delay.Y = 7.102630e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_70.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_70.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_70.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_70.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_90.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_10_90.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_90.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_INNER.LBA_30_90.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_70.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_70.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_70.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_70.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_90.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_10_90.delay.Y = 6.447862e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_90.delay.X = 6.447453e-06 +PIC.Core.CS006LBA.LBA_OUTER.LBA_30_90.delay.Y = 6.447862e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_110_190.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_110_190.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_170_230.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_170_230.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_210_250.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_ZERO.HBA_210_250.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_110_190.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_110_190.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_170_230.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_170_230.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_210_250.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL.HBA_210_250.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.447259e-06 +PIC.Core.CS006HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.447846e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_110_190.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_110_190.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_170_230.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_170_230.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_ONE.HBA_210_250.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_ONE.HBA_210_250.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_110_190.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_110_190.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_170_230.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_170_230.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_210_250.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL.HBA_210_250.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.447646e-06 +PIC.Core.CS006HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.447877e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_110_190.delay.X = 6.447453e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_110_190.delay.Y = 6.447862e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_170_230.delay.X = 6.447453e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_170_230.delay.Y = 6.447862e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS006HBA.HBA_JOINED.HBA_210_250.delay.X = 6.447453e-06 +PIC.Core.CS006HBA.HBA_JOINED.HBA_210_250.delay.Y = 6.447862e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_70.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_70.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_70.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_70.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_90.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_10_90.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_90.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_INNER.LBA_30_90.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_70.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_70.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_70.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_70.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_90.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_10_90.delay.Y = 6.476400e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_90.delay.X = 6.476847e-06 +PIC.Core.CS007LBA.LBA_OUTER.LBA_30_90.delay.Y = 6.476400e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_110_190.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_110_190.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_170_230.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_170_230.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_210_250.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_ZERO.HBA_210_250.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_110_190.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_110_190.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_170_230.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_170_230.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_210_250.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL.HBA_210_250.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.476597e-06 +PIC.Core.CS007HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.476583e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_110_190.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_110_190.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_170_230.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_170_230.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_ONE.HBA_210_250.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_ONE.HBA_210_250.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_110_190.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_110_190.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_170_230.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_170_230.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_210_250.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL.HBA_210_250.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.477097e-06 +PIC.Core.CS007HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.476217e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_110_190.delay.X = 6.476847e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_110_190.delay.Y = 6.476400e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_170_230.delay.X = 6.476847e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_170_230.delay.Y = 6.476400e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS007HBA.HBA_JOINED.HBA_210_250.delay.X = 6.476847e-06 +PIC.Core.CS007HBA.HBA_JOINED.HBA_210_250.delay.Y = 6.476400e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_70.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_70.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_70.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_70.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_90.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_10_90.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_90.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_INNER.LBA_30_90.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_70.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_70.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_70.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_70.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_90.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_10_90.delay.Y = 7.469310e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_90.delay.X = 7.468948e-06 +PIC.Core.CS011LBA.LBA_OUTER.LBA_30_90.delay.Y = 7.469310e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_110_190.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_110_190.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_170_230.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_170_230.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_210_250.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_ZERO.HBA_210_250.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_110_190.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_110_190.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_170_230.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_170_230.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_210_250.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL.HBA_210_250.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.468901e-06 +PIC.Core.CS011HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.469469e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_110_190.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_110_190.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_170_230.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_170_230.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_ONE.HBA_210_250.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_ONE.HBA_210_250.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_110_190.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_110_190.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_170_230.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_170_230.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_210_250.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL.HBA_210_250.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.468994e-06 +PIC.Core.CS011HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.469150e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_110_190.delay.X = 7.468948e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_110_190.delay.Y = 7.469310e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_170_230.delay.X = 7.468948e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_170_230.delay.Y = 7.469310e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS011HBA.HBA_JOINED.HBA_210_250.delay.X = 7.468948e-06 +PIC.Core.CS011HBA.HBA_JOINED.HBA_210_250.delay.Y = 7.469310e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_70.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_70.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_70.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_70.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_90.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_10_90.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_90.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_INNER.LBA_30_90.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_70.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_70.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_70.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_70.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_90.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_10_90.delay.Y = 8.689511e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_90.delay.X = 8.689485e-06 +PIC.Core.CS013LBA.LBA_OUTER.LBA_30_90.delay.Y = 8.689511e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_110_190.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_110_190.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_170_230.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_170_230.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_210_250.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_ZERO.HBA_210_250.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_110_190.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_110_190.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_170_230.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_170_230.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_210_250.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL.HBA_210_250.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 8.689572e-06 +PIC.Core.CS013HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 8.689498e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_110_190.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_110_190.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_170_230.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_170_230.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_ONE.HBA_210_250.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_ONE.HBA_210_250.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_110_190.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_110_190.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_170_230.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_170_230.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_210_250.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL.HBA_210_250.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 8.689397e-06 +PIC.Core.CS013HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 8.689523e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_110_190.delay.X = 8.689485e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_110_190.delay.Y = 8.689511e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_170_230.delay.X = 8.689485e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_170_230.delay.Y = 8.689511e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS013HBA.HBA_JOINED.HBA_210_250.delay.X = 8.689485e-06 +PIC.Core.CS013HBA.HBA_JOINED.HBA_210_250.delay.Y = 8.689511e-06 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_70.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_70.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_70.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_70.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_90.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_10_90.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_90.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_INNER.LBA_30_90.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_70.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_70.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_90.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.532111e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_90.delay.X = 1.532258e-05 +PIC.Core.CS017LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.532111e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.532263e-05 +PIC.Core.CS017HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.532123e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_110_190.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_170_230.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_ONE.HBA_210_250.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.532252e-05 +PIC.Core.CS017HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.532100e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_110_190.delay.X = 1.532258e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.532111e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_170_230.delay.X = 1.532258e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.532111e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS017HBA.HBA_JOINED.HBA_210_250.delay.X = 1.532258e-05 +PIC.Core.CS017HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.532111e-05 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_70.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_70.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_70.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_70.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_90.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_10_90.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_90.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_INNER.LBA_30_90.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_70.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_70.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_70.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_70.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_90.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_10_90.delay.Y = 5.959842e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_90.delay.X = 5.959107e-06 +PIC.Core.CS021LBA.LBA_OUTER.LBA_30_90.delay.Y = 5.959842e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_110_190.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_110_190.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_170_230.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_170_230.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_210_250.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_ZERO.HBA_210_250.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_110_190.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_110_190.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_170_230.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_170_230.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_210_250.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL.HBA_210_250.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 5.959155e-06 +PIC.Core.CS021HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 5.959660e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_110_190.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_110_190.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_170_230.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_170_230.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_ONE.HBA_210_250.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_ONE.HBA_210_250.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_110_190.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_110_190.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_170_230.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_170_230.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_210_250.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL.HBA_210_250.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 5.959058e-06 +PIC.Core.CS021HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 5.960023e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_110_190.delay.X = 5.959107e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_110_190.delay.Y = 5.959842e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_170_230.delay.X = 5.959107e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_170_230.delay.Y = 5.959842e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS021HBA.HBA_JOINED.HBA_210_250.delay.X = 5.959107e-06 +PIC.Core.CS021HBA.HBA_JOINED.HBA_210_250.delay.Y = 5.959842e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_70.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_70.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_70.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_70.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_90.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_10_90.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_90.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_INNER.LBA_30_90.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_70.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_70.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_70.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_70.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_90.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_10_90.delay.Y = 4.554567e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_90.delay.X = 4.555559e-06 +PIC.Core.CS024LBA.LBA_OUTER.LBA_30_90.delay.Y = 4.554567e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_110_190.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_110_190.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_170_230.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_170_230.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_210_250.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_ZERO.HBA_210_250.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_110_190.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_110_190.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_170_230.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_170_230.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_210_250.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL.HBA_210_250.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 4.555545e-06 +PIC.Core.CS024HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 4.554490e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_110_190.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_110_190.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_170_230.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_170_230.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_ONE.HBA_210_250.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_ONE.HBA_210_250.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_110_190.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_110_190.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_170_230.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_170_230.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_210_250.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL.HBA_210_250.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 4.555573e-06 +PIC.Core.CS024HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 4.554644e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_110_190.delay.X = 4.555559e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_110_190.delay.Y = 4.554567e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_170_230.delay.X = 4.555559e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_170_230.delay.Y = 4.554567e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS024HBA.HBA_JOINED.HBA_210_250.delay.X = 4.555559e-06 +PIC.Core.CS024HBA.HBA_JOINED.HBA_210_250.delay.Y = 4.554567e-06 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_70.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_70.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_70.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_70.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_90.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_10_90.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_90.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_INNER.LBA_30_90.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_70.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_70.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_90.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.611064e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_90.delay.X = 1.611022e-05 +PIC.Core.CS026LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.611064e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.611013e-05 +PIC.Core.CS026HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.611050e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_110_190.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_170_230.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_ONE.HBA_210_250.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.611031e-05 +PIC.Core.CS026HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.611078e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_110_190.delay.X = 1.611022e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.611064e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_170_230.delay.X = 1.611022e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.611064e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS026HBA.HBA_JOINED.HBA_210_250.delay.X = 1.611022e-05 +PIC.Core.CS026HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.611064e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_70.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_70.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_70.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_70.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_90.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_10_90.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_90.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_INNER.LBA_30_90.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_70.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_70.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_90.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.686041e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_90.delay.X = 1.685917e-05 +PIC.Core.CS028LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.686041e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.686043e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_ONE.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.686040e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_110_190.delay.X = 1.685917e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.686041e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_170_230.delay.X = 1.685917e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.686041e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS028HBA.HBA_JOINED.HBA_210_250.delay.X = 1.685917e-05 +PIC.Core.CS028HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.686041e-05 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_70.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_70.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_70.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_70.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_90.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_10_90.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_90.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_INNER.LBA_30_90.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_70.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_70.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_70.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_70.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_90.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_10_90.delay.Y = 9.625413e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_90.delay.X = 9.625541e-06 +PIC.Core.CS030LBA.LBA_OUTER.LBA_30_90.delay.Y = 9.625413e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_110_190.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_110_190.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_170_230.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_170_230.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_210_250.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_ZERO.HBA_210_250.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_110_190.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_110_190.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_170_230.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_170_230.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_210_250.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL.HBA_210_250.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 9.625532e-06 +PIC.Core.CS030HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 9.625262e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_110_190.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_110_190.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_170_230.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_170_230.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_ONE.HBA_210_250.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_ONE.HBA_210_250.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_110_190.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_110_190.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_170_230.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_170_230.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_210_250.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL.HBA_210_250.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 9.625551e-06 +PIC.Core.CS030HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 9.625565e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_110_190.delay.X = 9.625541e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_110_190.delay.Y = 9.625413e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_170_230.delay.X = 9.625541e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_170_230.delay.Y = 9.625413e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS030HBA.HBA_JOINED.HBA_210_250.delay.X = 9.625541e-06 +PIC.Core.CS030HBA.HBA_JOINED.HBA_210_250.delay.Y = 9.625413e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_70.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_70.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_70.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_70.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_90.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_10_90.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_90.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_INNER.LBA_30_90.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_70.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_70.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_70.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_70.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_90.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_10_90.delay.Y = 6.264419e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_90.delay.X = 6.265210e-06 +PIC.Core.CS031LBA.LBA_OUTER.LBA_30_90.delay.Y = 6.264419e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_110_190.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_110_190.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_170_230.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_170_230.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_210_250.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_ZERO.HBA_210_250.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_110_190.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_110_190.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_170_230.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_170_230.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_210_250.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL.HBA_210_250.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.265290e-06 +PIC.Core.CS031HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.264480e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_110_190.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_110_190.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_170_230.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_170_230.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_ONE.HBA_210_250.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_ONE.HBA_210_250.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_110_190.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_110_190.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_170_230.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_170_230.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_210_250.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL.HBA_210_250.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 6.265130e-06 +PIC.Core.CS031HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 6.264357e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_110_190.delay.X = 6.265210e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_110_190.delay.Y = 6.264419e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_170_230.delay.X = 6.265210e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_170_230.delay.Y = 6.264419e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS031HBA.HBA_JOINED.HBA_210_250.delay.X = 6.265210e-06 +PIC.Core.CS031HBA.HBA_JOINED.HBA_210_250.delay.Y = 6.264419e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_70.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_70.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_70.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_70.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_90.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_10_90.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_90.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_INNER.LBA_30_90.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_70.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_70.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_70.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_70.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_90.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_10_90.delay.Y = 8.456084e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_90.delay.X = 8.456112e-06 +PIC.Core.CS032LBA.LBA_OUTER.LBA_30_90.delay.Y = 8.456084e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_110_190.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_110_190.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_170_230.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_170_230.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_210_250.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_ZERO.HBA_210_250.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_110_190.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_110_190.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_170_230.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_170_230.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_210_250.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL.HBA_210_250.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 8.456099e-06 +PIC.Core.CS032HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_110_190.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_110_190.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_170_230.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_170_230.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_ONE.HBA_210_250.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_ONE.HBA_210_250.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_110_190.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_110_190.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_170_230.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_170_230.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_210_250.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL.HBA_210_250.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 8.456126e-06 +PIC.Core.CS032HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 8.456042e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_110_190.delay.X = 8.456112e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_110_190.delay.Y = 8.456084e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_170_230.delay.X = 8.456112e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_170_230.delay.Y = 8.456084e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS032HBA.HBA_JOINED.HBA_210_250.delay.X = 8.456112e-06 +PIC.Core.CS032HBA.HBA_JOINED.HBA_210_250.delay.Y = 8.456084e-06 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_70.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_70.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_70.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_70.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_90.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_10_90.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_90.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_INNER.LBA_30_90.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_70.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_70.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_90.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.505451e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_90.delay.X = 1.505483e-05 +PIC.Core.CS101LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.505451e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.505479e-05 +PIC.Core.CS101HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.505447e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_110_190.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_170_230.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_ONE.HBA_210_250.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.505488e-05 +PIC.Core.CS101HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.505454e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_110_190.delay.X = 1.505483e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.505451e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_170_230.delay.X = 1.505483e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.505451e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS101HBA.HBA_JOINED.HBA_210_250.delay.X = 1.505483e-05 +PIC.Core.CS101HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.505451e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_70.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_70.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_70.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_70.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_90.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_10_90.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_90.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_INNER.LBA_30_90.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_70.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_70.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_70.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_70.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_90.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_10_90.delay.Y = 3.539874e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_90.delay.X = 3.539926e-05 +PIC.Core.CS103LBA.LBA_OUTER.LBA_30_90.delay.Y = 3.539874e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_110_190.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_110_190.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_170_230.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_170_230.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_210_250.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_ZERO.HBA_210_250.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_110_190.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_110_190.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_170_230.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_170_230.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_210_250.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL.HBA_210_250.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 3.539919e-05 +PIC.Core.CS103HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 3.539868e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_110_190.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_110_190.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_170_230.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_170_230.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_ONE.HBA_210_250.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_ONE.HBA_210_250.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_110_190.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_110_190.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_170_230.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_170_230.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_210_250.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL.HBA_210_250.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 3.539934e-05 +PIC.Core.CS103HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 3.539880e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_110_190.delay.X = 3.539926e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_110_190.delay.Y = 3.539874e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_170_230.delay.X = 3.539926e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_170_230.delay.Y = 3.539874e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS103HBA.HBA_JOINED.HBA_210_250.delay.X = 3.539926e-05 +PIC.Core.CS103HBA.HBA_JOINED.HBA_210_250.delay.Y = 3.539874e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_70.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_70.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_70.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_70.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_90.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_10_90.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_90.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_INNER.LBA_30_90.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_70.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_70.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_90.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.735989e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_90.delay.X = 1.736016e-05 +PIC.Core.CS201LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.735989e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.736022e-05 +PIC.Core.CS201HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.736002e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_110_190.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_170_230.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_ONE.HBA_210_250.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.736010e-05 +PIC.Core.CS201HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.735976e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_110_190.delay.X = 1.736016e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.735989e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_170_230.delay.X = 1.736016e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.735989e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS201HBA.HBA_JOINED.HBA_210_250.delay.X = 1.736016e-05 +PIC.Core.CS201HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.735989e-05 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_70.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_70.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_70.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_70.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_90.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_10_90.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_90.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_INNER.LBA_30_90.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_70.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_70.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_70.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_70.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_90.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_10_90.delay.Y = 7.600549e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_90.delay.X = 7.599883e-06 +PIC.Core.CS301LBA.LBA_OUTER.LBA_30_90.delay.Y = 7.600549e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_110_190.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_110_190.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_170_230.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_170_230.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_210_250.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_ZERO.HBA_210_250.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_110_190.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_110_190.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_170_230.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_170_230.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_210_250.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL.HBA_210_250.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.599886e-06 +PIC.Core.CS301HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.600516e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_110_190.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_110_190.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_170_230.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_170_230.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_ONE.HBA_210_250.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_ONE.HBA_210_250.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_110_190.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_110_190.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_170_230.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_170_230.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_210_250.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL.HBA_210_250.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.599879e-06 +PIC.Core.CS301HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.600581e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_110_190.delay.X = 7.599883e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_110_190.delay.Y = 7.600549e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_170_230.delay.X = 7.599883e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_170_230.delay.Y = 7.600549e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS301HBA.HBA_JOINED.HBA_210_250.delay.X = 7.599883e-06 +PIC.Core.CS301HBA.HBA_JOINED.HBA_210_250.delay.Y = 7.600549e-06 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_70.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_70.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_70.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_70.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_90.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_10_90.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_90.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_INNER.LBA_30_90.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_70.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_70.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_90.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.223091e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_90.delay.X = 1.223101e-05 +PIC.Core.CS302LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.223091e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.223101e-05 +PIC.Core.CS302HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.223097e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_110_190.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_170_230.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_ONE.HBA_210_250.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.223100e-05 +PIC.Core.CS302HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.223084e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_110_190.delay.X = 1.223101e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.223091e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_170_230.delay.X = 1.223101e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.223091e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS302HBA.HBA_JOINED.HBA_210_250.delay.X = 1.223101e-05 +PIC.Core.CS302HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.223091e-05 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_70.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_70.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_70.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_70.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_90.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_10_90.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_90.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_INNER.LBA_30_90.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_70.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_70.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_70.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_70.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_90.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_10_90.delay.Y = 7.833323e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_90.delay.X = 7.833150e-06 +PIC.Core.CS401LBA.LBA_OUTER.LBA_30_90.delay.Y = 7.833323e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_110_190.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_110_190.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_170_230.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_170_230.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_210_250.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_ZERO.HBA_210_250.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_110_190.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_110_190.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_170_230.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_170_230.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_210_250.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL.HBA_210_250.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.833050e-06 +PIC.Core.CS401HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.833413e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_110_190.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_110_190.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_170_230.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_170_230.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_ONE.HBA_210_250.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_ONE.HBA_210_250.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_110_190.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_110_190.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_170_230.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_170_230.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_210_250.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL.HBA_210_250.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 7.833250e-06 +PIC.Core.CS401HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 7.833232e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_110_190.delay.X = 7.833150e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_110_190.delay.Y = 7.833323e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_170_230.delay.X = 7.833150e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_170_230.delay.Y = 7.833323e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS401HBA.HBA_JOINED.HBA_210_250.delay.X = 7.833150e-06 +PIC.Core.CS401HBA.HBA_JOINED.HBA_210_250.delay.Y = 7.833323e-06 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_70.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_70.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_70.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_70.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_90.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_10_90.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_90.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_INNER.LBA_30_90.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_70.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_70.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_90.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_90.delay.X = 1.649365e-05 +PIC.Core.CS501LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.649365e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_110_190.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_110_190.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_170_230.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_170_230.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_210_250.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_ZERO.HBA_210_250.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_110_190.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_110_190.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_170_230.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_170_230.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_210_250.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL.HBA_210_250.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.649378e-05 +PIC.Core.CS501HBA0.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.649378e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_110_190.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_110_190.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_170_230.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_170_230.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_ONE.HBA_210_250.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_ONE.HBA_210_250.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_110_190.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_110_190.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_170_230.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_170_230.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_210_250.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL.HBA_210_250.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.649352e-05 +PIC.Core.CS501HBA1.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.649352e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_110_190.delay.X = 1.649365e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.649365e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_170_230.delay.X = 1.649365e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.649365e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.CS501HBA.HBA_JOINED.HBA_210_250.delay.X = 1.649365e-05 +PIC.Core.CS501HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.649365e-05 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS106LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS106HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS205LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS205HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS208LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS208HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS210LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS210HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS305LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS305HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS306LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS306HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS307LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS307HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS310LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS310HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS406LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS406HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS407LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS407HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS409LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS409HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS503LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS503HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS508LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS508HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.RS509LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.RS509HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_70.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_70.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_70.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_70.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_90.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_10_90.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_90.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_INNER.LBA_30_90.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_70.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_70.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_70.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_70.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_90.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_10_90.delay.Y = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_90.delay.X = 1.100000e-06 +PIC.Core.DE601LBA.LBA_OUTER.LBA_30_90.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_110_190.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_110_190.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_170_230.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_170_230.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_JOINED.HBA_210_250.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_JOINED.HBA_210_250.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_110_190.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_110_190.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_170_230.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_170_230.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL.HBA_210_250.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL.HBA_210_250.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_110_190.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_110_190.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_170_230.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_170_230.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ZERO.HBA_210_250.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ZERO.HBA_210_250.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_110_190.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_110_190.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_170_230.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_170_230.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_ONE.HBA_210_250.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_ONE.HBA_210_250.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 1.100000e-06 +PIC.Core.DE601HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 1.100000e-06 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE602LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE602HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE603LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE603HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE604LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE604HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.DE605LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.DE605HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.FR606LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.FR606HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.SE607LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.SE607HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_INNER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_70.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_70.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_70.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_70.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_70.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_70.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_70.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_70.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_90.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_90.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_90.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_10_90.delay.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_90.phase0.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_90.phase0.Y = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_90.delay.X = 0.000000e+00 +PIC.Core.UK608LBA.LBA_OUTER.LBA_30_90.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_JOINED.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ZERO.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_ONE.HBA_210_250.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_110_190.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_110_190.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_110_190.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_110_190.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_170_230.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_170_230.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_170_230.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_170_230.delay.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_210_250.phase0.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_210_250.phase0.Y = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_210_250.delay.X = 0.000000e+00 +PIC.Core.UK608HBA.HBA_DUAL_INNER.HBA_210_250.delay.Y = 0.000000e+00 diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.run b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.run new file mode 100755 index 0000000000000000000000000000000000000000..45a3b1b346755e6a050976eb330758801d5bd198 --- /dev/null +++ b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.run @@ -0,0 +1,4 @@ +#!/bin/bash +TESTNAME=`basename "${0%%.run}"` + +../runtest.sh "$TESTNAME" diff --git a/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.sh b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.sh new file mode 100755 index 0000000000000000000000000000000000000000..0a247be27f8a9e0b71ad4a11b552ee3b283c20db --- /dev/null +++ b/SubSystems/Online_Cobalt/test/Correlator/tCorrelate_3sec_2st_5sb_doppler.sh @@ -0,0 +1,4 @@ +#!/bin/bash +TESTNAME=`basename "${0%%.sh}"` +./runctest.sh $TESTNAME +