idealOperatorDelay signal ms =  
        -- Remove last n ms from signal
        -- Pad the front n ms with 0 
        take n (repeat 0) ++ 
            take (length signal - n) signal
    where 
          samplesPerMs = (length signal `div` samplingTime)
          n = samplesPerMs * ms 


-- Apply moving average with k1, k2 ms 
-- to a given signal
idealOperatorDelay signal ms =  
        -- Remove last n ms from signal
        -- Pad the front n ms with 0 
        take n (repeat 0) ++ 
            take (length signal - n) signal
    where 
          samplesPerMs = (length signal `div` samplingTime)
          n = samplesPerMs * ms 


-- Apply moving average with k1, k2 ms 
-- to a given signal
idealOperatorDelay signal ms =  
        -- Remove last n ms from signal
        -- Pad the front n ms with 0 
        take n (repeat 0) ++ 
            take (length signal - n) signal
    where 
          samplesPerMs = (length signal `div` samplingTime)
          n = samplesPerMs * ms 


-- Apply moving average with k1, k2 ms 
-- to a given signal