SDS      !"#$%&'()*+,-./ 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  Safe!" 4Information about the features supported by your CPUExecute the CPUID instruction1Execute the CPUID instruction setting ECX as wellGet a Feature bit for SSE4.2Feature bit for AVXExtended feature bit for AVX2 Check if the CPU supports SSE4.2Check if the CPU supports AVX Check if the CPU supports AVX2 YConvenience function for selecting a function based on the features that the CPU supportsOperation (EAX)Result (EAX, EBX, ECX, EDX)Operation (EAX)ECXResult (EAX, EBX, ECX, EDX) The CPU featuresDefault implementation'List of (feature, implementation) pairsThe selected implementation    None Compute a sinc function Compute a Hanning window. Compute a Hamming window. Compute a Blackman window. Compute a windowed sinc functionhGiven filter coefficients, plot their frequency response and save the graph as "frequency_response.png".Square root raised cosine The length. Must be odd."The cutoff frequency (from 0 to 1) The length of the window The length of the windowThe length of the window The length"The cutoff frequency (from 0 to 1)The window functionThe filter coefficientssize: from [-n .. n]sampling periodbeta    SafeFParse a number that may have a decimal point and a suffix, e.g. 2.56M NoneLike mapAccumL but monadic and over vectors. Doesn't return the accumulator at the end because it doesn't seem to be possible to do this with the Stream datatype, making this function pretty useless.{Create a vector from another vector containing only the elements that occur every stride elements in the source vector.`Fill a mutable vector from a monadic stream. This appears to be missing from the Vector library.#Copy a Vector into a mutable vectorSimilar to unfoldrN from the vector package but the generator function cannot terminate and it returns the final value of the seed in addition to the vector The same as & but the generator function is monadic The functionThe initial accumulatorThe input streamThe output stream The strideThe input VectorThe output VectorThe input Stream!The mutable Vector to stream intoThe destination The source!Generates a vector with this sizeThe generator functionThe initial value of the seed(The (vector, final value of seed) result!Generates a vector with this size2The monadic generator function The initial value of the seed(The (vector, final value of seed) resultSafe Fork a pipe ,Combine two consumers into a single consumer+A consumer that prints everything to stdout#A consumer that discards everything,Passthrough pipe that prints the sample ratemapAccum for PipesAccumulating function Initial value of the accumulatorNone:T+Convert a Vector of Floats to a ByteString. ,Convert a Vector of Doubles to a ByteString.!+Convert a ByteString to a Vector of Floats.",Convert a ByteString to a Vector of Doubles.#WConvert a Vector of Storable values to a ByteString. This is fast as it is just a cast.$WConvert a ByteString to a Vector of Storable values. This is fast as it is just a cast.%SGiven a Handle, create a Consumer that dumps the Vectors written to it to a Handle.&VGiven a Handle, create a Producer that creates Vectors from data read from the Handle. !"#$%& !"#$%&! "#$%& !"#$%&None:T':Creates a function that performs a complex to complex DFT.(6Creates a Pipe that performs a complex to complex DFT.)7Creates a function that performs a real to complex DFT.*3Creates a pipe that performs a real to complex DFT.+Creates a pipe that uses multiple threads to perform complex to complex DFTs in a pipelined fashion. Each time a buffer is consumed, it is given to a pool of threads to perform the DFT. Then, if a thread has finished performing a previous DFT, the result is yielded.'(The size of the input and output buffers((The size of the input and output buffers)The size of the input Vector*The size of the input Vector+The number of threads to useThe size of the input Vector '()*+ '()*+'()*+None:,)FM demodulate a stream of complex samples-)FM demodulate a vector of complex samples."Pipe that performs FM demodulation,=The starting sample - i.e. the last sample in the last bufferThe input streamThe output stream-=The starting sample - i.e. the last sample in the last bufferThe input VectorThe output Vector.,-.,-.,-. None/CCreate a window and plot a dynamic line graph of the incoming data.0NCreate a window and plot a dynamic line graph of the incoming data. With Axes.1:Create a window and plot a waterfall of the incoming data.2MCreate a window and plot a dynamic filled in line graph of the incoming data.3XCreate a window and plot a dynamic filled in line graph of the incoming data. With Axes.4Create a Cairo : monad that draws a set of axes with 0 at the bottom left.5Create a Cairo N monad that draws a set of axes with the X axis centered on a specified value./ Window width Window height Number of samples in each bufferNumber of vertices in graph0 Window width Window height Number of samples in each bufferNumber of vertices in graph'Cairo Render object that draws the axes1 Window width Window heightNumber of columnsNumber of rows  The color map2 Window width Window height Number of samples in each buffer The color map3 Window width Window height Number of samples in each buffer The color map'Cairo Render object that draws the axes4 Image width Image height X axis spanX axis grid interval5 Image width Image heightCenter X value X axis spanX axis grid interval/012345/012345/012345 None9:;<=T66A class for things that can be multiplied by a scalar.Scaling8Create a vector of complex floating samples from a vector of interleaved I Q components. Each input element ranges from 0 to 255. This is the format that RTLSDR devices use.9Same as 8M but written in C and specialized for unsigned byte inputs and Float outputs.:Same as 8b but written in C using SSE intrinsics and specialized for unsigned byte inputs and Float outputs.;Same as 8b but written in C using AVX intrinsics and specialized for unsigned byte inputs and Float outputs.<Same as 8~ but uses the fastest SIMD instruction set your processor supports and specialized for unsigned byte inputs and Float outputs.=Create a vector of complex float samples from a vector of interleaved I Q components. Each input element ranges from -2048 to 2047. This is the format that the BladeRF uses.>Same as 8L but written in C and specialized for signed short inputs and Float outputs.?Same as 8a but written in C using SSE intrinsics and specialized for signed short inputs and Float outputs.@Same as 8a but written in C using AVX intrinsics and specialized for signed short inputs and Float outputs.ASame as =} but uses the fastest SIMD instruction set your processor supports and specialized for signed short inputs and Float outputs.BCreate a vector of interleaved I Q component integral samples from a vector of complex Floats. Each input ranges from -2048 to 2047. This is the format the BladeRF uses.CSame as BL but written in C and specialized for Float inputs and signed short outputs.DScale a vector, written in CE1Scale a vector, written in C using SSE intrinsicsF1Scale a vector, written in C using AVX intrinsicsGNScale a vector. Uses the fastest SIMD instruction set your processor supports.H2Apply a function to both parts of a complex numberIXMultiplication by this vector shifts all frequencies up by 1/2 of the sampling frequencyJXMultiplication by this vector shifts all frequencies up by 1/4 of the sampling frequencyKA Producer that streams vectors of the bits that make up the string argument concatenated repeatedly. Each bit is encoded as a float with value (+1) for 1 and (-1) for 0.LtA Producer that streams vectors of random bits. Each bit is encoded as a float with value (+1) for 1 and (-1) for 0.MSimple automatic gain control N"Simple automatic gain control pipeOCSpecializes to combineInit :: IO (Pipe a b IO ()) -> Pipe a b IO ()PhSpecializes to combineInitTrans :: EitherT String IO (Pipe a b IO ()) -> Pipe a b (EitherT String IO) ())67   89:;<=>?@ABCD Scale factor Input vector Output vectorE Scale factor Input vector Output vectorF Scale factor Input vector Output vectorGH The functionInput complex numberOutput complex numberIThe length of the VectorJThe length of the VectorK(The string whose bits are to be streamed The size of each streamed vectorL The size of each streamed vector  Ma reference initial state input vector(final state, output vector)Na referenceOPQR6789:;<=>?@ABCDEFGHIJKLMNOP67789:;<=>?@ABCDEFGHIJKLMNOP(67   89:;<=>?@ABCDEFGHIJKL  MNOPQR None!"TcSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~cSTUVW[XYZ\]^_`abcdefghijklmnopqrstuvwxyz{|}~ca`_~}|{zyxwv^]\utsrqponmlkjiVWXYZ[UThgfSedcb^STUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None!"%&:AT)A / contains all of the information needed by the resample function to perform resampling i.e. it contains the filter coefficients and pointers to the functions to do the actual resampling.A / contains all of the information needed by the decimate function to perform decimation i.e. it contains the filter coefficients and pointers to the functions to do the actual decimation.A / contains all of the information needed by the filterr function to perform filtering. i.e. it contains the filter coefficients and pointers to the functions to do the actual filtering.DReturns a slow Filter data structure entirely implemented in HaskellfReturns a fast Filter data structure implemented in C. For filtering real data with real coefficients.}Returns a fast Filter data structure implemented in C using SSE instructions. For filtering real data with real coefficients.}Returns a fast Filter data structure implemented in C using AVX instructions. For filtering real data with real coefficients.Returns a fast Filter data structure implemented in C using the fastest SIMD instruction set your processor supports. For filtering real data with real coefficients.hReturns a fast Filter data structure implemented in C For filtering complex data with real coefficients.Returns a fast Filter data structure implemented in C using SSE instructions. For filtering complex data with real coefficients.Returns a fast Filter data structure implemented in C using AVX instructions. For filtering complex data with real coefficients.Returns a fast Filter data structure implemented in C using the fastest SIMD instruction set your processor supports. For filtering complex data with real coefficients.Returns a fast Filter data structure implemented in C using SSE instructions. For filtering real data with real coefficients. For filters with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.Returns a fast Filter data structure implemented in C using AVX instructions. For filtering real data with real coefficients. For filters with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.Returns a fast Filter data structure implemented in C using the fastest SIMD instruction set your processor supports. For filtering complex data with real coefficients. For filters with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.GReturns a slow Decimator data structure entirely implemented in HaskelljReturns a fast Decimator data structure implemented in C. For decimating real data with real coefficients.Returns a fast Decimator data structure implemented in C using SSE instructions. For decimating real data with real coefficients.Returns a fast Decimator data structure implemented in C using AVX instructions. For decimating real data with real coefficients.Returns a fast Decimator data structure implemented in C using the fastest SIMD instruction set your processor supports. For decimating real data with real coefficients.mReturns a fast Decimator data structure implemented in C. For decimating complex data with real coefficients.Returns a fast Decimator data structure implemented in C using SSE instructions. For decimating complex data with real coefficients.Returns a fast Decimator data structure implemented in C using AVX instructions. For decimating complex data with real coefficients.Returns a fast Decimator data structure implemented in C using the fastest SIMD instruction set your processor supports. For decimating complex data with real coefficients.Returns a fast Decimator data structure implemented in C using SSE instructions. For decimating real data with real coefficients. For decimators with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.Returns a fast Decimator data structure implemented in C using AVX instructions. For decimating real data with real coefficients. For decimators with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.Returns a fast Decimator data structure implemented in C using the fastest SIMD instruction set your processor supports. For decimating real data with real coefficients. For decimators with symmetric coefficients, i.e. 'linear phase'. Coefficient length must be a multiple of 4.GReturns a slow Resampler data structure entirely implemented in HaskelliReturns a fast Resampler data structure implemented in C. For filtering real data with real coefficients.Returns a fast Resampler data structure implemented in C using SSE instructions. For filtering real data with real coefficients.Returns a fast Resampler data structure implemented in C using AVX instructions. For filtering real data with real coefficients.Returns a fast Resampler data structure implemented in C using the fastest SIMD instruction set your processor supports. For resampling real data with real coefficients.lReturns a fast Resampler data structure implemented in C. For filtering complex data with real coefficients.Returns a fast Resampler data structure implemented in C using SSE instructions. For filtering complex data with real coefficients.Returns a fast Resampler data structure implemented in C using AVX instructions. For filtering complex data with real coefficients.Returns a fast Resampler data structure implemented in C using the fastest SIMD instruction set your processor supports. For resampling complex data with real coefficients.My own assert implementation since the GHC one doesnt seem to work even with optimisations disabled and using -fno-ignore-asserts&Create a pipe that performs filtering 'Create a pipe that performs decimation 'Create a pipe that performs resampling A DC blocking filterJThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe CPU's capabilitiesThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe filter coefficientsThe  data structureThe CPU's capabilitiesThe filter coefficientsThe  data structure)The first half of the filter coefficientsThe  data structure)The first half of the filter coefficientsThe  data structureThe CPU's capabilitiesThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe CPU's capabilitiesThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe decimation factorThe filter coefficientsThe  data structureThe CPU's capabilitiesThe decimation factorThe filter coefficientsThe  data structureThe decimation factor)The first half of the filter coefficientsThe  data structureThe decimation factor)The first half of the filter coefficientsThe  data structureThe CPU's capabilitiesThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe CPU's capabilitiesThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe CPU's capabilitiesThe interpolation factorThe decimation factorThe filter coefficientsThe  data structureThe  data structureThe output block sizeThe  that does the filteringThe  data structureThe output block sizeThe  that does the decimation The  data structureThe output block sizeThe  that does the resampling887 None!"RTLSDR configuration parameters"Some reasonable default parameters-Set the configuration parameters for a devicedReturns a producer that streams data from a Realtek RTL2832U based device. You probably want to use interleavedIQUnsigned256ToFloatl to turn it into a list of complex Floats. This function initializes and configures the device for you. Use ] if you need more control over how the device is configured or want to configure it yourself.dReturns a producer that streams data from a Realtek RTL2832U based device. You probably want to use interleavedIQUnsigned256ToFloatm to turn it into a list of complex Floats. This function takes a pre-configured device handle to stream from.  Frequency Sample rate Device handle ParametersConfiguration parametersNumber of buffers Buffer lengthBEither a string describing the error that occurred or the Producer Device handleNumber of buffers Buffer length The producer NoneReturns a consumer that sends all incoming data to pulseaudio. Runs Pulse Audio output writing in a different thread. This is probably what you want as it does not block the entire pipline while the data is being played.>Returns a consumer that sends all incoming data to pulseaudio.! !"#$%&'()*+,-./0123456789:;< = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d d e f g h i j k l m n o p q r s t u v w x y z { | } ~                                   ! " # $ % &'() *+"sdr-0.1.0.8-I9vSxSLzrsc3AHkxFGoRGb SDR.CPUIDSDR.FilterDesign SDR.ArgUtilsSDR.VectorUtils SDR.PipeUtils SDR.SerializeSDR.FFT SDR.DemodSDR.PlotSDR.UtilSDR.FilterInternal SDR.FilterSDR.RTLSDRStream SDR.PulseCPUInfofeaturesextendedFeaturescpuid cpuidExtended getCPUInfohasSSE42hasAVXhasAVX2 featureSelectsinchanninghammingblackman windowedSinc plotFrequencysrrc parseSize mapAccumMVstridefillcopyIntovUnfoldr vUnfoldrMforkcombine printStreamdevnullrate pMapAccumfloatVecToByteStringdoubleVecToByteStringfloatVecFromByteStringdoubleVecFromByteString toByteStringfromByteStringtoHandle fromHandlefftw'fftw fftwReal'fftwReal fftwParallel fmDemodStr fmDemodVecfmDemodplotLine plotLineAxes plotWaterfallplotFill plotFillAxeszeroAxes centeredAxesMultmultinterleavedIQUnsigned256ToFloat interleavedIQUnsignedByteToFloat#interleavedIQUnsignedByteToFloatSSE#interleavedIQUnsignedByteToFloatAVX$interleavedIQUnsignedByteToFloatFastinterleavedIQSigned2048ToFloatinterleavedIQSignedWordToFloat!interleavedIQSignedWordToFloatSSE!interleavedIQSignedWordToFloatAVX"interleavedIQSignedWordToFloatFast%complexFloatToInterleavedIQSigned2048%complexFloatToInterleavedIQSignedWordscaleC scaleCSSE scaleCAVX scaleFastcplxMap halfBandUp quarterBandUp streamString streamRandomagcagcPipe combineInitcombineInitTrans$fMultComplexa$fMultaa ResampleRC ResampleRR ResampleRCoeffs numCoeffs numGroups incrementsgroups DecimateRC DecimateRR DecimateCRRFilterRCFilterRR FilterCRR c_dcBlockerresampleAVXRC_cresampleCSSERC_c resample2RC_cresampleAVXRR_cresampleCSSERR_c resample2_c resample_cdecimateAVXSymmetricRC_cdecimateSSESymmetricRC_cdecimateAVXSymmetricRR_cdecimateSSESymmetricRR_cdecimateAVXRC2_cdecimateAVXRC_cdecimateAVXRR_cdecimateSSERC2_cdecimateSSERC_cdecimateSSERR_c decimateCRC_c decimateCRR_cfilterAVXSymmetricRC_cfilterSSESymmetricRC_cfilterAVXRC2_c filterAVXRC_cfilterAVXSymmetricRR_c filterAVXRR_cfilterSSERC2_c filterSSERC_cfilterSSESymmetricRR_c filterSSERR_c filterRC_c filterRR_cfilterHighLevelfilterImperative1filterImperative2 filterFFIR filterFFIC filterCRR filterCRC filterCSSERRfilterCSSESymmetricRR filterCSSERC filterCSSERC2 filterCAVXRRfilterCAVXSymmetricRR filterCAVXRC filterCAVXRC2filterCSSESymmetricRCfilterCAVXSymmetricRCdecimateHighLevel decimateFFIR decimateFFIC decimateCRR decimateCRCdecimateCSSERRdecimateCSSERCdecimateCSSERC2decimateCAVXRRdecimateCAVXRCdecimateCAVXRC2decimateCSSESymmetricRRdecimateCAVXSymmetricRRdecimateCSSESymmetricRCdecimateCAVXSymmetricRCresampleHighLevel resampleCRRpad strideListroundUp prepareCoeffs resampleFFIR resampleFFIC mkResampler resampleCRR2resampleCSSERRresampleCAVXRR mkResamplerC resampleCRCresampleCSSERCresampleCAVXRCdecimateCrossHighLevelfilterCrossHighLevelresampleCrossHighLevel dcBlocker Resampler numCoeffsR decimationRinterpolationRstartDat resampleOne resampleCross Decimator numCoeffsD decimationD decimateOne decimateCrossFilter numCoeffsF filterOne filterCross haskellFilter fastFilterCRfastFilterSSERfastFilterAVXR fastFilterR fastFilterCCfastFilterSSECfastFilterAVXC fastFilterCfastFilterSymSSERfastFilterSymAVXRfastFilterSymRhaskellDecimatorfastDecimatorCRfastDecimatorSSERfastDecimatorAVXRfastDecimatorRfastDecimatorCCfastDecimatorSSECfastDecimatorAVXCfastDecimatorCfastDecimatorSymSSERfastDecimatorSymAVXRfastDecimatorSymRhaskellResamplerfastResamplerCRfastResamplerSSERfastResamplerAVXRfastResamplerRfastResamplerCCfastResamplerSSECfastResamplerAVXCfastResamplerC firFilter firDecimator firResamplerdcBlockingFilter RTLSDRParams centerFreq sampleRatefreqCorrection tunerGaindefaultRTLSDRParamssetRTLSDRParams sdrStreamsdrStreamFromDevicepulseAudioSinkdoPulsesse42avxavx2cpuidExtended_ccpuid_csignalmallocForeignBufferAligned%cairo-0.13.3.0-B3cpVme5KkJ245EliTjVGZ!Graphics.Rendering.Cairo.InternalRenderscale_c scaleAVX_c scaleSSE_cconvertBladeRFTransmit_cconvertCAVXBladeRF_cconvertCSSEBladeRF_cconvertCBladeRF_c convertCAVX_c convertCSSE_c convertC_ccdivcmulassertBufferbufferoffset duplicatemkFilter mkFilterC mkFilterSymR mkDecimator mkDecimatorCmkDecimatorSymRspace newBuffer advanceOutBuf"pipes-4.2.0-8veVUE0CRzvI6Zqpf0iGEM Pipes.CorePipequotUp