{-# LANGUAGE TypeFamilies, MultiParamTypeClasses, FlexibleContexts #-}

module Language.XDsp.Semantics.CsoundExt.All where

import Language.XDsp.Semantics.Core
import Language.XDsp.Semantics.CsoundExt.Core
import Language.XDsp.Semantics.Extras
import Language.XDsp.Semantics.BasicExtensions

class (CsoundClass repr) => CsATSadd repr  where
  aTSadd ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  aTSadd' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsATSaddnz repr  where
  aTSaddnz ::
    KSig repr
    -> VString repr
    -> INum repr
    -> repr (ASig repr)
  aTSaddnz' :: KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsATSbufread repr  where
  aTSbufread ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> repr ()
  aTSbufread' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsATScross repr  where
  aTScross ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  aTScross' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsATSinfo repr  where
  aTSinfo ::
    VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsATSinterpread repr  where
  aTSinterpread ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsATSpartialtap repr  where
  aTSpartialtap ::
    INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsATSread repr  where
  aTSread ::
    KSig repr
    -> VString repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsATSreadnz repr  where
  aTSreadnz ::
    KSig repr
    -> VString repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsATSsinnoi repr  where
  aTSsinnoi ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> repr (ASig repr)
  aTSsinnoi' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMixerClear repr  where
  mixerClear ::
    repr ()


class (CsoundClass repr) => CsMixerGetLevel repr  where
  mixerGetLevel ::
    INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsMixerReceive repr  where
  mixerReceive ::
    INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMixerSend repr  where
  mixerSend ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMixerSetLevel repr  where
  mixerSetLevel ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMixerSetLevel_i repr  where
  mixerSetLevel_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsACS repr  where
  aCS ::
    KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAdd repr out a b where
  add ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsAdsr repr out  where
  adsr ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  adsr' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsAdsyn repr  where
  adsyn ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> repr (ASig repr)
  adsyn' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAdsynt repr  where
  adsynt ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  adsynt' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAdsynt2 repr  where
  adsynt2 ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  adsynt2' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAftouch repr  where
  aftouch ::
    repr (KSig repr)
  aftouch' :: INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsAlpass repr  where
  alpass ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  alpass' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAlwayson repr  where
  alwayson ::
    VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsAmpdb repr out a where
  ampdb ::
    a
    -> repr out


class (CsoundClass repr) => CsAmpdbfs repr out a where
  ampdbfs ::
    a
    -> repr out


class (CsoundClass repr) => CsAmpmidi repr  where
  ampmidi ::
    INum repr
    -> repr (INum repr)
  ampmidi' :: INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsAmpmidid repr out  where
  ampmidid ::
    KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsAnd repr out a b where
  and ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsAreson repr  where
  areson ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  areson' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAresonk repr  where
  aresonk ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)
  aresonk' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsAtone repr  where
  atone ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  atone' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsAtonek repr  where
  atonek ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)
  atonek' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsAtonex repr  where
  atonex ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  atonex' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBabo repr  where
  babo ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  babo' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsBalance repr  where
  balance ::
    ASig repr
    -> ASig repr
    -> repr (ASig repr)
  balance' :: ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBamboo repr  where
  bamboo ::
    KSig repr
    -> INum repr
    -> repr (ASig repr)
  bamboo' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBarmodel repr  where
  barmodel ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBbcutm repr  where
  bbcutm ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  bbcutm' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBbcuts repr  where
  bbcuts ::
    ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  bbcuts' :: ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsBetarand repr out  where
  betarand ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsBexprnd repr out  where
  bexprnd ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsBformdec repr d  where
  bformdec ::
    INum repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> [ASig repr]
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsBformdec1 repr d  where
  bformdec1 ::
    INum repr
    -> [ASig repr]
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsBformenc1 repr d  where
  bformenc1 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsBinit repr  where
  binit ::
    FSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr) => CsBiquad repr  where
  biquad ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  biquad' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBiquada repr  where
  biquada ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> repr (ASig repr)
  biquada' :: ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsBirnd repr out  where
  birnd ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsBqrez repr a b where
  bqrez ::
    ASig repr
    -> a
    -> b
    -> repr (ASig repr)
  bqrez' :: ASig repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButbp repr  where
  butbp ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  butbp' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButbr repr  where
  butbr ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  butbr' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButhp repr  where
  buthp ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  buthp' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButlp repr  where
  butlp ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  butlp' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButterbp repr  where
  butterbp ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  butterbp' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButterbr repr  where
  butterbr ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  butterbr' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButterhp repr  where
  butterhp ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  butterhp' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButterlp repr  where
  butterlp ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  butterlp' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsButton repr  where
  button ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsBuzz repr a b where
  buzz ::
    a
    -> b
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  buzz' :: a
    -> b
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsCabasa repr  where
  cabasa ::
    INum repr
    -> INum repr
    -> repr (ASig repr)
  cabasa' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsCauchy repr out  where
  cauchy ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsCeil repr out a where
  ceil ::
    a
    -> repr out


class (CsoundClass repr) => CsCent repr out a where
  cent ::
    a
    -> repr out


class (CsoundClass repr) => CsChanctrl repr out  where
  chanctrl ::
    INum repr
    -> INum repr
    -> repr out
  chanctrl' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsChanged repr  where
  changed ::
    [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsChani repr out  where
  chani ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsChano repr a where
  chano ::
    a
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsChebyshevpoly repr  where
  chebyshevpoly ::
    ASig repr
    -> [KSig repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsCheckbox repr  where
  checkbox ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsChn_S repr  where
  chn_S ::
    VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsChn_a repr  where
  chn_a ::
    VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsChn_k repr  where
  chn_k ::
    VString repr
    -> INum repr
    -> repr ()
  chn_k' :: VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsChnclear repr  where
  chnclear ::
    VString repr
    -> repr ()


class (CsoundClass repr) => CsChnexport repr out  where
  chnexport ::
    VString repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsChnget repr out  where
  chnget ::
    VString repr
    -> repr out


class (CsoundClass repr) => CsChnmix repr  where
  chnmix ::
    ASig repr
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsChnrecv repr  where
  chnrecv ::
    VString repr
    -> repr ()
  chnrecv' :: VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsChnsend repr  where
  chnsend ::
    VString repr
    -> repr ()
  chnsend' :: VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsChnset repr a where
  chnset ::
    a
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsClear repr  where
  clear ::
    [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsClfilt repr  where
  clfilt ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  clfilt' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsClip repr  where
  clip ::
    ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  clip' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsClockoff repr  where
  clockoff ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsClockon repr  where
  clockon ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsComb repr  where
  comb ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  comb' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsCompress repr  where
  compress ::
    ASig repr
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsConnect repr  where
  connect ::
    VString repr
    -> VString repr
    -> VString repr
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsControl repr  where
  control ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsConvle repr d  where
  convle ::
    ASig repr
    -> VString repr
    -> repr (TList d (ASig repr))
  convle' :: ASig repr
    -> VString repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsConvolve repr d  where
  convolve ::
    ASig repr
    -> VString repr
    -> repr (TList d (ASig repr))
  convolve' :: ASig repr
    -> VString repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsCos repr out a where
  cos ::
    a
    -> repr out


class (CsoundClass repr) => CsCosh repr out a where
  cosh ::
    a
    -> repr out


class (CsoundClass repr) => CsCosinv repr out a where
  cosinv ::
    a
    -> repr out


class (CsoundClass repr) => CsCps2pch repr  where
  cps2pch ::
    INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsCpsmidi repr  where
  cpsmidi ::
    repr (INum repr)


class (CsoundClass repr) => CsCpsmidib repr out  where
  cpsmidib ::
    repr out
  cpsmidib' :: INum repr
    -> repr out


class (CsoundClass repr) => CsCpsmidinn repr out  where
  cpsmidinn ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsCpstmid repr  where
  cpstmid ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsCpstun repr  where
  cpstun ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsCpstuni repr  where
  cpstuni ::
    INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsCpsxpch repr  where
  cpsxpch ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsCpuprc repr  where
  cpuprc ::
    VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsCross2 repr  where
  cross2 ::
    ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsCrossfm repr a b c d where
  crossfm ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crossfm' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrossfmi repr a b c d where
  crossfmi ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crossfmi' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrossfmpm repr a b c d where
  crossfmpm ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crossfmpm' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrossfmpmi repr a b c d where
  crossfmpmi ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crossfmpmi' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrosspm repr a b c d where
  crosspm ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crosspm' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrosspmi repr a b c d where
  crosspmi ::
    a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  crosspmi' :: a
    -> b
    -> c
    -> d
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsCrunch repr  where
  crunch ::
    INum repr
    -> INum repr
    -> repr (ASig repr)
  crunch' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsCtlchn repr  where
  ctlchn ::
    repr (KSig repr, KSig repr, KSig repr)
  ctlchn' :: INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr, KSig repr)


class (CsoundClass repr) => CsCtrl14 repr out  where
  ctrl14 ::
    INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  ctrl14' :: INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsCtrl21 repr out  where
  ctrl21 ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  ctrl21' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsCtrl7 repr out  where
  ctrl7 ::
    INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  ctrl7' :: INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsCtrlinit repr  where
  ctrlinit ::
    INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsCuserrnd repr out  where
  cuserrnd ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsDam repr  where
  dam ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDate repr  where
  date ::
    repr (INum repr)


class (CsoundClass repr) => CsDates repr  where
  dates ::
    repr (VString repr)
  dates' :: INum repr
    -> repr (VString repr)


class (CsoundClass repr) => CsDb repr out a where
  db ::
    a
    -> repr out


class (CsoundClass repr) => CsDbamp repr out  where
  dbamp ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsDbfsamp repr out  where
  dbfsamp ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsDcblock repr  where
  dcblock ::
    ASig repr
    -> repr (ASig repr)
  dcblock' :: ASig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDcblock2 repr  where
  dcblock2 ::
    ASig repr
    -> repr (ASig repr)
  dcblock2' :: ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDconv repr  where
  dconv ::
    ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDelay repr  where
  delay ::
    ASig repr
    -> INum repr
    -> repr (ASig repr)
  delay' :: ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDelay1 repr  where
  delay1 ::
    ASig repr
    -> repr (ASig repr)
  delay1' :: ASig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDelayk repr  where
  delayk ::
    KSig repr
    -> INum repr
    -> repr (KSig repr)
  delayk' :: KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsDelayw repr  where
  delayw ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsDeltap repr  where
  deltap ::
    KSig repr
    -> repr (ASig repr)
  deltap' :: KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDeltap3 repr a where
  deltap3 ::
    a
    -> repr (ASig repr)
  deltap3' :: a
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDeltapi repr a where
  deltapi ::
    a
    -> repr (ASig repr)
  deltapi' :: a
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDeltapn repr a where
  deltapn ::
    a
    -> repr (ASig repr)
  deltapn' :: a
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDeltapx repr  where
  deltapx ::
    ASig repr
    -> INum repr
    -> repr (ASig repr)
  deltapx' :: ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDeltapxw repr  where
  deltapxw ::
    ASig repr
    -> ASig repr
    -> INum repr
    -> repr ()
  deltapxw' :: ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsDenorm repr  where
  denorm ::
    [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsDiff repr out a where
  diff ::
    a
    -> repr out
  diff' :: a
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsDiskgrain repr d  where
  diskgrain ::
    VString repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))
  diskgrain' :: VString repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsDiskin repr d  where
  diskin ::
    VString repr
    -> KSig repr
    -> repr (TList d (ASig repr))
  diskin' :: VString repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsDiskin2 repr d  where
  diskin2 ::
    VString repr
    -> KSig repr
    -> repr (TList d (ASig repr))
  diskin2' :: VString repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsDistort repr  where
  distort ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  distort' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDistort1 repr  where
  distort1 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  distort1' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDiv repr out a b where
  div ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsDivz repr out a b where
  divz ::
    a
    -> b
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsDoppler repr  where
  doppler ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  doppler' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDownsamp repr  where
  downsamp ::
    ASig repr
    -> repr (KSig repr)
  downsamp' :: ASig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsDripwater repr  where
  dripwater ::
    KSig repr
    -> INum repr
    -> repr (ASig repr)
  dripwater' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsDumpk repr  where
  dumpk ::
    KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsDumpk2 repr  where
  dumpk2 ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsDumpk3 repr  where
  dumpk3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsDumpk4 repr  where
  dumpk4 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsDuserrnd repr out  where
  duserrnd ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsEndin repr  where
  endin ::
    repr ()


class (CsoundClass repr) => CsEndop repr  where
  endop ::
    repr ()


class (CsoundClass repr) => CsEnvlpx repr out a where
  envlpx ::
    a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  envlpx' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsEnvlpxr repr out a where
  envlpxr ::
    a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  envlpxr' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsEphasor repr out a where
  ephasor ::
    a
    -> KSig repr
    -> repr (out,out)
  ephasor' :: a
    -> KSig repr
    -> INum repr
    -> repr (out,out)


class (CsoundClass repr) => CsEqfil repr  where
  eqfil ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  eqfil' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsEvent_i repr  where
  event_i ::
    VString repr
    -> VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsExitnow repr  where
  exitnow ::
    repr ()


class (CsoundClass repr) => CsExp repr out a where
  exp ::
    a
    -> repr out


class (CsoundClass repr) => CsExpcurve repr  where
  expcurve ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsExpon repr out  where
  expon ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsExprand repr out  where
  exprand ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsExpseg repr out  where
  expseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr out


class (CsoundClass repr) => CsExpsega repr  where
  expsega ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr (ASig repr)


class (CsoundClass repr) => CsExpsegr repr out  where
  expsegr ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr out


class (CsoundClass repr) => CsFiclose repr  where
  ficlose ::
    VString repr
    -> repr ()


class (CsoundClass repr) => CsFilebit repr  where
  filebit ::
    VString repr
    -> repr (INum repr)
  filebit' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilelen repr  where
  filelen ::
    VString repr
    -> repr (INum repr)
  filelen' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilenchnls repr  where
  filenchnls ::
    VString repr
    -> repr (INum repr)
  filenchnls' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilepeak repr  where
  filepeak ::
    VString repr
    -> repr (INum repr)
  filepeak' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilesr repr  where
  filesr ::
    VString repr
    -> repr (INum repr)
  filesr' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilevalid repr  where
  filevalid ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFilter2 repr out a where
  filter2 ::
    a
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr out


class (CsoundClass repr) => CsFin repr  where
  fin ::
    VString repr
    -> INum repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsFini repr  where
  fini ::
    VString repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFink repr  where
  fink ::
    VString repr
    -> INum repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsFiopen repr  where
  fiopen ::
    VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFlanger repr  where
  flanger ::
    ASig repr
    -> ASig repr
    -> KSig repr
    -> repr (ASig repr)
  flanger' :: ASig repr
    -> ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFlashtxt repr  where
  flashtxt ::
    INum repr
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsFlooper repr  where
  flooper ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFlooper2 repr a where
  flooper2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  flooper2' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> a
    -> repr (ASig repr)


class (CsoundClass repr) => CsFlooper3 repr  where
  flooper3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  flooper3' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmb3 repr  where
  fmb3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmbell repr  where
  fmbell ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmmetal repr  where
  fmmetal ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmpercfl repr  where
  fmpercfl ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmrhode repr  where
  fmrhode ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmvoice repr  where
  fmvoice ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFmwurlie repr  where
  fmwurlie ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFof repr a b c where
  fof ::
    a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  fof' :: a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFof2 repr a b c where
  fof2 ::
    a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  fof2' :: a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFofilter repr  where
  fofilter ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  fofilter' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFog repr a b c where
  fog ::
    a
    -> b
    -> c
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  fog' :: a
    -> b
    -> c
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFold repr  where
  fold ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFollow repr  where
  follow ::
    ASig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFollow2 repr  where
  follow2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFoscil repr a b c where
  foscil ::
    a
    -> KSig repr
    -> b
    -> c
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  foscil' :: a
    -> KSig repr
    -> b
    -> c
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFoscili repr a b c where
  foscili ::
    a
    -> KSig repr
    -> b
    -> c
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  foscili' :: a
    -> KSig repr
    -> b
    -> c
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsFout repr  where
  fout ::
    VString repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsFouti repr  where
  fouti ::
    INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFoutir repr  where
  foutir ::
    INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFoutk repr  where
  foutk ::
    VString repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsFprintks repr a where
  fprintks ::
    VString repr
    -> VString repr
    -> [a]
    -> repr ()


class (CsoundClass repr) => CsFprints repr a where
  fprints ::
    VString repr
    -> VString repr
    -> [a]
    -> repr ()


class (CsoundClass repr) => CsFreeverb repr  where
  freeverb ::
    ASig repr
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr)
  freeverb' :: ASig repr
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsFtchnls repr  where
  ftchnls ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFtconv repr d  where
  ftconv ::
    ASig repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))
  ftconv' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsFtcps repr  where
  ftcps ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFtfree repr  where
  ftfree ::
    INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsFtgen repr  where
  ftgen ::
    INum repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> VString repr
    -> [INum repr]
    -> repr (INum repr)


class (CsoundClass repr) => CsFtgenonce repr  where
  ftgenonce ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> [INum repr]
    -> repr (INum repr)


class (CsoundClass repr) => CsFtgentmp repr  where
  ftgentmp ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> [INum repr]
    -> repr (INum repr)


class (CsoundClass repr) => CsFtlen repr  where
  ftlen ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFtload repr  where
  ftload ::
    VString repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFtloadk repr  where
  ftloadk ::
    VString repr
    -> KSig repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFtlptim repr  where
  ftlptim ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsFtmorf repr  where
  ftmorf ::
    KSig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsFtsave repr  where
  ftsave ::
    VString repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFtsavek repr  where
  ftsavek ::
    VString repr
    -> KSig repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsFtsr repr  where
  ftsr ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsGain repr  where
  gain ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  gain' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGainslider repr  where
  gainslider ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsGauss repr out  where
  gauss ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsGbuzz repr a b where
  gbuzz ::
    a
    -> b
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  gbuzz' :: a
    -> b
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGetcfg repr  where
  getcfg ::
    INum repr
    -> repr (VString repr)


class (CsoundClass repr) => CsGogobel repr  where
  gogobel ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGrain repr a b c where
  grain ::
    a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  grain' :: a
    -> b
    -> c
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGrain2 repr  where
  grain2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  grain2' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGrain3 repr  where
  grain3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  grain3' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGranule repr a where
  granule ::
    a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  granule' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsGuiro repr  where
  guiro ::
    KSig repr
    -> INum repr
    -> repr (ASig repr)
  guiro' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHarmon repr  where
  harmon ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHarmon2 repr  where
  harmon2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  harmon2' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHarmon3 repr  where
  harmon3 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  harmon3' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHarmon4 repr  where
  harmon4 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  harmon4' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHilbert repr  where
  hilbert ::
    ASig repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsHrtfer repr  where
  hrtfer ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsHrtfmove repr  where
  hrtfmove ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> VString repr
    -> repr (ASig repr, ASig repr)
  hrtfmove' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsHrtfmove2 repr  where
  hrtfmove2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> VString repr
    -> repr (ASig repr, ASig repr)
  hrtfmove2' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> VString repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsHrtfstat repr  where
  hrtfstat ::
    ASig repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> VString repr
    -> repr (ASig repr, ASig repr)
  hrtfstat' :: ASig repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsHsboscil repr  where
  hsboscil ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  hsboscil' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsHvs1 repr  where
  hvs1 ::
    KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  hvs1' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsHvs2 repr  where
  hvs2 ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  hvs2' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsHvs3 repr  where
  hvs3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  hvs3' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsICS repr  where
  iCS ::
    KSig repr
    -> repr (INum repr)


class (CsoundClass repr) => CsIhold repr  where
  ihold ::
    repr ()


class (CsoundClass repr) => CsInCS repr  where
  inCS ::
    repr (ASig repr)


class (CsoundClass repr) => CsInch repr d  where
  inch ::
    [KSig repr]
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsInitc14 repr  where
  initc14 ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsInitc21 repr  where
  initc21 ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsInitc7 repr  where
  initc7 ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsInleta repr  where
  inleta ::
    VString repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsInletf repr  where
  inletf ::
    VString repr
    -> repr (FSig repr)


class (CsoundClass repr) => CsInletk repr  where
  inletk ::
    VString repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsInq repr  where
  inq ::
    repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsInrg repr  where
  inrg ::
    KSig repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsIns repr  where
  ins ::
    repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsInsglobal repr  where
  insglobal ::
    VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsInsremot repr  where
  insremot ::
    VString repr
    -> VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsInstr repr  where
  instr ::
    repr ()


class (CsoundClass repr) => CsInteg repr out a where
  integ ::
    a
    -> repr out
  integ' :: a
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsInterp repr  where
  interp ::
    KSig repr
    -> repr (ASig repr)
  interp' :: KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsInvalue repr out  where
  invalue ::
    VString repr
    -> repr out


class (CsoundClass repr) => CsInz repr  where
  inz ::
    KSig repr
    -> repr ()


class (CsoundClass repr) => CsJitter repr  where
  jitter ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsJitter2 repr  where
  jitter2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsJspline repr out a where
  jspline ::
    a
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsKCS repr  where
  kCS ::
    INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsKtableseg repr  where
  ktableseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsLfo repr out  where
  lfo ::
    KSig repr
    -> KSig repr
    -> repr out
  lfo' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsLimit repr out a where
  limit ::
    a
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsLine repr out  where
  line ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsLinen repr out a where
  linen ::
    a
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsLinenr repr out a where
  linenr ::
    a
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsLineto repr  where
  lineto ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsLinrand repr out  where
  linrand ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsLinseg repr out  where
  linseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr out


class (CsoundClass repr) => CsLinsegr repr out  where
  linsegr ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr out


class (CsoundClass repr) => CsLocsend repr d  where
  locsend ::
    repr (TList d (ASig repr))


class (CsoundClass repr) => CsLocsig repr d  where
  locsig ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsLog repr out a where
  log ::
    a
    -> repr out


class (CsoundClass repr) => CsLog10 repr out a where
  log10 ::
    a
    -> repr out


class (CsoundClass repr) => CsLogcurve repr  where
  logcurve ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsLoopseg repr  where
  loopseg ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLoopsegp repr  where
  loopsegp ::
    KSig repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLooptseg repr  where
  looptseg ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLoopxseg repr  where
  loopxseg ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLorenz repr  where
  lorenz ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr)
  lorenz' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsLorismorph repr  where
  lorismorph ::
    INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsLorisplay repr  where
  lorisplay ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLorisread repr  where
  lorisread ::
    KSig repr
    -> VString repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  lorisread' :: KSig repr
    -> VString repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsLoscil repr d a where
  loscil ::
    a
    -> KSig repr
    -> INum repr
    -> repr (TList d (ASig repr))
  loscil' :: a
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsLoscil3 repr d a where
  loscil3 ::
    a
    -> KSig repr
    -> INum repr
    -> repr (TList d (ASig repr))
  loscil3' :: a
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsLoscilx repr d a where
  loscilx ::
    a
    -> KSig repr
    -> VString repr
    -> repr (TList d (ASig repr))
  loscilx' :: a
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsLowpass2 repr  where
  lowpass2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  lowpass2' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLowres repr  where
  lowres ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  lowres' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLowresx repr  where
  lowresx ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  lowresx' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLpf18 repr  where
  lpf18 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLpform repr  where
  lpform ::
    KSig repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsLpfreson repr  where
  lpfreson ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLphasor repr a where
  lphasor ::
    a
    -> repr (ASig repr)
  lphasor' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLpinterp repr  where
  lpinterp ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsLposcil repr  where
  lposcil ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  lposcil' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLposcil3 repr  where
  lposcil3 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  lposcil3' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLposcila repr  where
  lposcila ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  lposcila' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLposcilsa repr  where
  lposcilsa ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  lposcilsa' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsLposcilsa2 repr  where
  lposcilsa2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  lposcilsa2' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsLpread repr  where
  lpread ::
    KSig repr
    -> VString repr
    -> repr (KSig repr, KSig repr, KSig repr, KSig repr)
  lpread' :: KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr, KSig repr, KSig repr)


class (CsoundClass repr) => CsLpreson repr  where
  lpreson ::
    ASig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsLpshold repr  where
  lpshold ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLpsholdp repr  where
  lpsholdp ::
    KSig repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsLpslot repr  where
  lpslot ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMac repr  where
  mac ::
    [(KSig repr, ASig repr)]
    -> repr (ASig repr)


class (CsoundClass repr) => CsMaca repr  where
  maca ::
    [ASig repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsMadsr repr out  where
  madsr ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  madsr' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsMandel repr  where
  mandel ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsMandol repr  where
  mandol ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  mandol' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMarimba repr  where
  marimba ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  marimba' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMassign repr  where
  massign ::
    INum repr
    -> VString repr
    -> repr ()
  massign' :: INum repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMax_k repr  where
  max_k ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsMaxabsaccum repr  where
  maxabsaccum ::
    ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsMaxaccum repr  where
  maxaccum ::
    ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsMaxalloc repr  where
  maxalloc ::
    VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMaxk repr  where
  maxk ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsMclock repr  where
  mclock ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMdelay repr  where
  mdelay ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMedian repr  where
  median ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  median' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMediank repr  where
  mediank ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)
  mediank' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsMetro repr  where
  metro ::
    KSig repr
    -> repr (KSig repr)
  metro' :: KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsMidglobal repr  where
  midglobal ::
    VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsMidic14 repr out  where
  midic14 ::
    INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  midic14' :: INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsMidic21 repr out  where
  midic21 ::
    INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  midic21' :: INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsMidic7 repr out  where
  midic7 ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr out
  midic7' :: INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsMidichannelaftertouch repr a where
  midichannelaftertouch ::
    a
    -> repr ()
  midichannelaftertouch' :: a
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMidichn repr  where
  midichn ::
    repr (INum repr)


class (CsoundClass repr) => CsMidicontrolchange repr a b where
  midicontrolchange ::
    a
    -> b
    -> repr ()
  midicontrolchange' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMidictrl repr out  where
  midictrl ::
    INum repr
    -> repr out
  midictrl' :: INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsMididefault repr a b where
  mididefault ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidiin repr  where
  midiin ::
    repr (KSig repr, KSig repr, KSig repr, KSig repr)


class (CsoundClass repr) => CsMidinoteoff repr a b where
  midinoteoff ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidinoteoncps repr a b where
  midinoteoncps ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidinoteonkey repr a b where
  midinoteonkey ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidinoteonoct repr a b where
  midinoteonoct ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidinoteonpch repr a b where
  midinoteonpch ::
    a
    -> b
    -> repr ()


class (CsoundClass repr) => CsMidion repr  where
  midion ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMidion2 repr  where
  midion2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMidiout repr  where
  midiout ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMidipgm repr  where
  midipgm ::
    repr (INum repr)
  midipgm' :: INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsMidipitchbend repr a where
  midipitchbend ::
    a
    -> repr ()
  midipitchbend' :: a
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMidipolyaftertouch repr a b where
  midipolyaftertouch ::
    a
    -> b
    -> repr ()
  midipolyaftertouch' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMidiprogramchange repr a where
  midiprogramchange ::
    a
    -> repr ()


class (CsoundClass repr) => CsMiditempo repr  where
  miditempo ::
    repr (KSig repr)


class (CsoundClass repr) => CsMidremot repr  where
  midremot ::
    VString repr
    -> VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsMinabsaccum repr  where
  minabsaccum ::
    ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsMinaccum repr  where
  minaccum ::
    ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsMincer repr d  where
  mincer ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (TList d (ASig repr))
  mincer' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsMirror repr out a where
  mirror ::
    a
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsMod repr out a b where
  mod ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsMode repr  where
  mode ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  mode' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsModmatrix repr  where
  modmatrix ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMonitor repr d  where
  monitor ::
    repr (TList d (ASig repr))


class (CsoundClass repr) => CsMoog repr  where
  moog ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMoogladder repr  where
  moogladder ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  moogladder' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMoogvcf repr a b where
  moogvcf ::
    ASig repr
    -> a
    -> b
    -> repr (ASig repr)
  moogvcf' :: ASig repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMoogvcf2 repr a b where
  moogvcf2 ::
    ASig repr
    -> a
    -> b
    -> repr (ASig repr)
  moogvcf2' :: ASig repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMoscil repr  where
  moscil ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsMpulse repr  where
  mpulse ::
    KSig repr
    -> KSig repr
    -> repr (ASig repr)
  mpulse' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsMrtmsg repr  where
  mrtmsg ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMul repr out a b where
  mul ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsMultitap repr  where
  multitap ::
    ASig repr
    -> [INum repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsMute repr  where
  mute ::
    VString repr
    -> repr ()
  mute' :: VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsMutex_lock repr  where
  mutex_lock ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMutex_locki repr  where
  mutex_locki ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMutex_unlock repr  where
  mutex_unlock ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMutex_unlocki repr  where
  mutex_unlocki ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsMxadsr repr out  where
  mxadsr ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  mxadsr' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsNestedap repr  where
  nestedap ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  nestedap' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsNlalp repr  where
  nlalp ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  nlalp' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsNlfilt repr  where
  nlfilt ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsNoise repr a where
  noise ::
    a
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsNot repr out a where
  not ::
    a
    -> repr out


class (CsoundClass repr) => CsNoteoff repr  where
  noteoff ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsNoteon repr  where
  noteon ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsNoteondur repr  where
  noteondur ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsNoteondur2 repr  where
  noteondur2 ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsNotnum repr  where
  notnum ::
    repr (INum repr)


class (CsoundClass repr) => CsNreverb repr  where
  nreverb ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  nreverb' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsNrpn repr  where
  nrpn ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsNsamp repr  where
  nsamp ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsNstrnum repr  where
  nstrnum ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsNtrpol repr out a b where
  ntrpol ::
    a
    -> b
    -> KSig repr
    -> repr out
  ntrpol' :: a
    -> b
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsOctave repr out a where
  octave ::
    a
    -> repr out


class (CsoundClass repr) => CsOctmidi repr  where
  octmidi ::
    repr (INum repr)


class (CsoundClass repr) => CsOctmidib repr out  where
  octmidib ::
    repr out
  octmidib' :: INum repr
    -> repr out


class (CsoundClass repr) => CsOctmidinn repr out  where
  octmidinn ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsOpcode repr  where
  opcode ::
    repr ()


class (CsoundClass repr) => CsOr repr out a b where
  or ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsOscbnk repr  where
  oscbnk ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> repr (ASig repr)
  oscbnk' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOscil repr out a b where
  oscil ::
    a
    -> b
    -> INum repr
    -> repr out
  oscil' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsOscil1 repr  where
  oscil1 ::
    INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsOscil1i repr  where
  oscil1i ::
    INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsOscil3 repr out a b where
  oscil3 ::
    a
    -> b
    -> INum repr
    -> repr out
  oscil3' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsOscili repr out a b where
  oscili ::
    a
    -> b
    -> INum repr
    -> repr out
  oscili' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsOscilikt repr out a b where
  oscilikt ::
    a
    -> b
    -> KSig repr
    -> repr out
  oscilikt' :: a
    -> b
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsOsciliktp repr  where
  osciliktp ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  osciliktp' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOscilikts repr a b where
  oscilikts ::
    a
    -> b
    -> KSig repr
    -> ASig repr
    -> KSig repr
    -> repr (ASig repr)
  oscilikts' :: a
    -> b
    -> KSig repr
    -> ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOsciln repr  where
  osciln ::
    KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOscils repr  where
  oscils ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  oscils' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOscilx repr  where
  oscilx ::
    KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsOut32 repr  where
  out32 ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutc repr  where
  outc ::
    [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsOutch repr  where
  outch ::
    [(KSig repr, ASig repr)]
    -> repr ()


class (CsoundClass repr) => CsOuth repr  where
  outh ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutiat repr  where
  outiat ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutic repr  where
  outic ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutic14 repr  where
  outic14 ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutipat repr  where
  outipat ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutipb repr  where
  outipb ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutipc repr  where
  outipc ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsOutkat repr  where
  outkat ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutkc repr  where
  outkc ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutkc14 repr  where
  outkc14 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutkpat repr  where
  outkpat ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutkpb repr  where
  outkpb ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutkpc repr  where
  outkpc ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutleta repr  where
  outleta ::
    VString repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutletf repr  where
  outletf ::
    VString repr
    -> FSig repr
    -> repr ()


class (CsoundClass repr) => CsOutletk repr  where
  outletk ::
    VString repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsOutq1 repr  where
  outq1 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutq2 repr  where
  outq2 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutq3 repr  where
  outq3 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutq4 repr  where
  outq4 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutrg repr  where
  outrg ::
    KSig repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsOuts1 repr  where
  outs1 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOuts2 repr  where
  outs2 ::
    ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutx repr  where
  outx ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsOutz repr  where
  outz ::
    KSig repr
    -> repr ()


class (CsoundClass repr) => CsP repr out  where
  p ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsPan repr  where
  pan ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  pan' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsPan2 repr a where
  pan2 ::
    ASig repr
    -> a
    -> repr (ASig repr, ASig repr)
  pan2' :: ASig repr
    -> a
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsPareq repr  where
  pareq ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  pareq' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPartials repr  where
  partials ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr) => CsPcauchy repr out  where
  pcauchy ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsPchbend repr out  where
  pchbend ::
    repr out
  pchbend' :: INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPchmidi repr  where
  pchmidi ::
    repr (INum repr)


class (CsoundClass repr) => CsPchmidib repr out  where
  pchmidib ::
    repr out
  pchmidib' :: INum repr
    -> repr out


class (CsoundClass repr) => CsPchmidinn repr out  where
  pchmidinn ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsPconvolve repr d  where
  pconvolve ::
    ASig repr
    -> VString repr
    -> repr (TList d (ASig repr))
  pconvolve' :: ASig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsPcount repr  where
  pcount ::
    repr (INum repr)


class (CsoundClass repr) => CsPdclip repr  where
  pdclip ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  pdclip' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPdhalf repr  where
  pdhalf ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  pdhalf' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPdhalfy repr  where
  pdhalfy ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  pdhalfy' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPeak repr a where
  peak ::
    a
    -> repr (KSig repr)


class (CsoundClass repr) => CsPgmassign repr  where
  pgmassign ::
    INum repr
    -> VString repr
    -> repr ()
  pgmassign' :: INum repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsPgmchn repr  where
  pgmchn ::
    repr (KSig repr, KSig repr)
  pgmchn' :: INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsPhaser1 repr  where
  phaser1 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  phaser1' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPhaser2 repr  where
  phaser2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPhasorbnk repr out a where
  phasorbnk ::
    a
    -> KSig repr
    -> INum repr
    -> repr out
  phasorbnk' :: a
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPindex repr  where
  pindex ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsPinkish repr a where
  pinkish ::
    a
    -> repr (ASig repr)
  pinkish' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPitch repr  where
  pitch ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)
  pitch' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsPitchac repr  where
  pitchac ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsPitchamdf repr  where
  pitchamdf ::
    ASig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)
  pitchamdf' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsPlanet repr  where
  planet ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr)
  planet' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsPluck repr  where
  pluck ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  pluck' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPoisson repr out  where
  poisson ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsPolyaft repr out  where
  polyaft ::
    INum repr
    -> repr out
  polyaft' :: INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPolynomial repr  where
  polynomial ::
    ASig repr
    -> [KSig repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsPop_f repr  where
  pop_f ::
    repr (FSig repr)


class (CsoundClass repr) => CsPort repr  where
  port ::
    KSig repr
    -> INum repr
    -> repr (KSig repr)
  port' :: KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsPortk repr  where
  portk ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)
  portk' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsPoscil repr out a b where
  poscil ::
    a
    -> b
    -> INum repr
    -> repr out
  poscil' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPoscil3 repr out  where
  poscil3 ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> repr out
  poscil3' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPow repr out a where
  pow ::
    a
    -> KSig repr
    -> repr out
  pow' :: a
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsPowershape repr  where
  powershape ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  powershape' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPowoftwo repr out a where
  powoftwo ::
    a
    -> repr out


class (CsoundClass repr) => CsPrealloc repr  where
  prealloc ::
    VString repr
    -> INum repr
    -> repr ()
  prealloc' :: VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsPrepiano repr d  where
  prepiano ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))
  prepiano' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsPrint repr  where
  print ::
    [INum repr]
    -> repr ()


class (CsoundClass repr) => CsPrintf_i repr  where
  printf_i ::
    VString repr
    -> INum repr
    -> VString repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsPrintk repr  where
  printk ::
    INum repr
    -> KSig repr
    -> repr ()
  printk' :: INum repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsPrintk2 repr  where
  printk2 ::
    KSig repr
    -> repr ()
  printk2' :: KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsPrintks repr a where
  printks ::
    VString repr
    -> INum repr
    -> [a]
    -> repr ()


class (CsoundClass repr) => CsPrints repr a where
  prints ::
    VString repr
    -> [a]
    -> repr ()


class (CsoundClass repr) => CsProduct repr  where
  product ::
    [ASig repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsPset repr  where
  pset ::
    [INum repr]
    -> repr ()


class (CsoundClass repr) => CsPtrack repr  where
  ptrack ::
    ASig repr
    -> INum repr
    -> repr (KSig repr, KSig repr)
  ptrack' :: ASig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsPush repr  where
  push ::
    [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsPush_f repr  where
  push_f ::
    FSig repr
    -> repr ()


class (CsoundClass repr) => CsPuts repr  where
  puts ::
    VString repr
    -> KSig repr
    -> repr ()
  puts' :: VString repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsPvadd repr  where
  pvadd ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  pvadd' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPvbufread repr  where
  pvbufread ::
    KSig repr
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsPvcross repr  where
  pvcross ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  pvcross' :: KSig repr
    -> KSig repr
    -> VString repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPvinterp repr  where
  pvinterp ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPvoc repr  where
  pvoc ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> repr (ASig repr)
  pvoc' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsPvread repr  where
  pvread ::
    KSig repr
    -> VString repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr, PVS repr) => CsPvsadsyn repr  where
  pvsadsyn ::
    FSig repr
    -> INum repr
    -> KSig repr
    -> repr (ASig repr)
  pvsadsyn' :: FSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr, PVS repr) => CsPvsanal repr  where
  pvsanal ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr)
  pvsanal' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsarp repr  where
  pvsarp ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsbandp repr a b c d e where
  pvsbandp ::
    FSig repr
    -> a
    -> b
    -> c
    -> d
    -> repr (FSig repr)
  pvsbandp' :: FSig repr
    -> a
    -> b
    -> c
    -> d
    -> e
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsbandr repr a b c d e where
  pvsbandr ::
    FSig repr
    -> a
    -> b
    -> c
    -> d
    -> repr (FSig repr)
  pvsbandr' :: FSig repr
    -> a
    -> b
    -> c
    -> d
    -> e
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsbin repr out  where
  pvsbin ::
    FSig repr
    -> KSig repr
    -> repr (out,out)


class (CsoundClass repr, PVS repr) => CsPvsblur repr  where
  pvsblur ::
    FSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsbuffer repr  where
  pvsbuffer ::
    FSig repr
    -> INum repr
    -> repr (INum repr, KSig repr)


class (CsoundClass repr, PVS repr) => CsPvsbufread repr a b where
  pvsbufread ::
    KSig repr
    -> KSig repr
    -> repr (FSig repr)
  pvsbufread' :: KSig repr
    -> KSig repr
    -> a
    -> b
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvscent repr out  where
  pvscent ::
    FSig repr
    -> repr out


class (CsoundClass repr, PVS repr) => CsPvscross repr  where
  pvscross ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsdemix repr  where
  pvsdemix ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsdisp repr  where
  pvsdisp ::
    FSig repr
    -> repr ()
  pvsdisp' :: FSig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr, PVS repr) => CsPvsfilter repr a where
  pvsfilter ::
    FSig repr
    -> FSig repr
    -> a
    -> repr (FSig repr)
  pvsfilter' :: FSig repr
    -> FSig repr
    -> a
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsfread repr  where
  pvsfread ::
    KSig repr
    -> VString repr
    -> repr (FSig repr)
  pvsfread' :: KSig repr
    -> VString repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsfreeze repr  where
  pvsfreeze ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsftr repr  where
  pvsftr ::
    FSig repr
    -> INum repr
    -> repr ()
  pvsftr' :: FSig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr, PVS repr) => CsPvsftw repr  where
  pvsftw ::
    FSig repr
    -> INum repr
    -> repr (KSig repr)
  pvsftw' :: FSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr, PVS repr) => CsPvsfwrite repr  where
  pvsfwrite ::
    FSig repr
    -> VString repr
    -> repr ()


class (CsoundClass repr, PVS repr) => CsPvshift repr a b c d where
  pvshift ::
    FSig repr
    -> a
    -> KSig repr
    -> repr (FSig repr)
  pvshift' :: FSig repr
    -> a
    -> KSig repr
    -> b
    -> c
    -> d
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsifd repr  where
  pvsifd ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr, FSig repr)
  pvsifd' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr, FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsin repr  where
  pvsin ::
    KSig repr
    -> repr (FSig repr)
  pvsin' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsinfo repr  where
  pvsinfo ::
    FSig repr
    -> repr (INum repr, INum repr, INum repr, INum repr)


class (CsoundClass repr, PVS repr) => CsPvsinit repr  where
  pvsinit ::
    INum repr
    -> repr (FSig repr)
  pvsinit' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvslock repr  where
  pvslock ::
    FSig repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsmaska repr  where
  pvsmaska ::
    FSig repr
    -> INum repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsmix repr  where
  pvsmix ::
    FSig repr
    -> FSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsmooth repr a b where
  pvsmooth ::
    FSig repr
    -> a
    -> b
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsmorph repr  where
  pvsmorph ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsosc repr  where
  pvsosc ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)
  pvsosc' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsout repr  where
  pvsout ::
    FSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr, PVS repr) => CsPvspitch repr  where
  pvspitch ::
    FSig repr
    -> KSig repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr, PVS repr) => CsPvstencil repr  where
  pvstencil ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsvoc repr a where
  pvsvoc ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> repr (FSig repr)
  pvsvoc' :: FSig repr
    -> FSig repr
    -> KSig repr
    -> KSig repr
    -> a
    -> repr (FSig repr)


class (CsoundClass repr, PVS repr) => CsPvsynth repr  where
  pvsynth ::
    FSig repr
    -> repr (ASig repr)
  pvsynth' :: FSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsRand repr out a where
  rand ::
    a
    -> repr out
  rand' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsRandh repr out a b where
  randh ::
    a
    -> b
    -> repr out
  randh' :: a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsRandi repr out a b where
  randi ::
    a
    -> b
    -> repr out
  randi' :: a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsRandom repr out  where
  random ::
    KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsRandomh repr out a where
  randomh ::
    KSig repr
    -> KSig repr
    -> a
    -> repr out


class (CsoundClass repr) => CsRandomi repr out a where
  randomi ::
    KSig repr
    -> KSig repr
    -> a
    -> repr out


class (CsoundClass repr) => CsRbjeq repr  where
  rbjeq ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  rbjeq' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsReadclock repr  where
  readclock ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsReadk repr  where
  readk ::
    VString repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsReadk2 repr  where
  readk2 ::
    VString repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsReadk3 repr  where
  readk3 ::
    VString repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr, KSig repr)


class (CsoundClass repr) => CsReadk4 repr  where
  readk4 ::
    VString repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr, KSig repr, KSig repr)


class (CsoundClass repr) => CsReadks repr  where
  readks ::
    VString repr
    -> INum repr
    -> repr (VString repr)


class (CsoundClass repr) => CsRelease repr  where
  release ::
    repr (KSig repr)


class (CsoundClass repr) => CsRemoteport repr  where
  remoteport ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsRemove repr  where
  remove ::
    VString repr
    -> repr ()


class (CsoundClass repr) => CsRepluck repr  where
  repluck ::
    INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> ASig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsReson repr  where
  reson ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  reson' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsResonk repr  where
  resonk ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)
  resonk' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsResonr repr  where
  resonr ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  resonr' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsResonx repr  where
  resonx ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  resonx' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsResonxk repr  where
  resonxk ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)
  resonxk' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsResony repr  where
  resony ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> repr (ASig repr)
  resony' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsResonz repr  where
  resonz ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  resonz' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsResyn repr  where
  resyn ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsReverb repr  where
  reverb ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  reverb' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsReverb2 repr  where
  reverb2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  reverb2' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsReverbsc repr  where
  reverbsc ::
    ASig repr
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr)
  reverbsc' :: ASig repr
    -> ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsRewindscore repr  where
  rewindscore ::
    repr ()


class (CsoundClass repr) => CsRezzy repr a b where
  rezzy ::
    ASig repr
    -> a
    -> b
    -> repr (ASig repr)
  rezzy' :: ASig repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsRireturn repr  where
  rireturn ::
    repr ()


class (CsoundClass repr) => CsRms repr  where
  rms ::
    ASig repr
    -> repr (KSig repr)
  rms' :: ASig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsRnd repr out  where
  rnd ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsRnd31 repr out  where
  rnd31 ::
    KSig repr
    -> KSig repr
    -> repr out
  rnd31' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsRound repr out a where
  round ::
    a
    -> repr out


class (CsoundClass repr) => CsRspline repr out a b where
  rspline ::
    a
    -> b
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsRtclock repr out  where
  rtclock ::
    repr out


class (CsoundClass repr) => CsSamphold repr out a b where
  samphold ::
    a
    -> b
    -> repr out
  samphold' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsSandpaper repr  where
  sandpaper ::
    INum repr
    -> INum repr
    -> repr (ASig repr)
  sandpaper' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsScale repr  where
  scale ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsScanhammer repr  where
  scanhammer ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsScans repr  where
  scans ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  scans' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsScantable repr  where
  scantable ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsScanu repr  where
  scanu ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSchedule repr  where
  schedule ::
    VString repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsSchedwhen repr  where
  schedwhen ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsScoreline repr  where
  scoreline ::
    VString repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsScoreline_i repr  where
  scoreline_i ::
    VString repr
    -> repr ()


class (CsoundClass repr) => CsSeed repr  where
  seed ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsSekere repr  where
  sekere ::
    INum repr
    -> INum repr
    -> repr (ASig repr)
  sekere' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSemitone repr out a where
  semitone ::
    a
    -> repr out


class (CsoundClass repr) => CsSeqtime repr  where
  seqtime ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSeqtime2 repr  where
  seqtime2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSetctrl repr  where
  setctrl ::
    INum repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSetksmps repr  where
  setksmps ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsSetscorepos repr  where
  setscorepos ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsSfilist repr  where
  sfilist ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsSfinstr repr a b where
  sfinstr ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  sfinstr' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSfinstr3 repr a b where
  sfinstr3 ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  sfinstr3' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSfinstr3m repr a b where
  sfinstr3m ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  sfinstr3m' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSfinstrm repr a b where
  sfinstrm ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  sfinstrm' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSfload repr  where
  sfload ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsSflooper repr  where
  sflooper ::
    INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr)
  sflooper' :: INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSfpassign repr  where
  sfpassign ::
    INum repr
    -> INum repr
    -> repr ()
  sfpassign' :: INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSfplay repr a b where
  sfplay ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> repr (ASig repr, ASig repr)
  sfplay' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSfplay3 repr a b where
  sfplay3 ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> repr (ASig repr, ASig repr)
  sfplay3' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSfplay3m repr a b where
  sfplay3m ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> repr (ASig repr)
  sfplay3m' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSfplaym repr a b where
  sfplaym ::
    INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> repr (ASig repr)
  sfplaym' :: INum repr
    -> INum repr
    -> a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSfplist repr  where
  sfplist ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsSfpreset repr  where
  sfpreset ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsShaker repr  where
  shaker ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  shaker' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsShl repr out a b where
  shl ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsShr repr out a b where
  shr ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsSin repr out a where
  sin ::
    a
    -> repr out


class (CsoundClass repr) => CsSinh repr out a where
  sinh ::
    a
    -> repr out


class (CsoundClass repr) => CsSininv repr out a where
  sininv ::
    a
    -> repr out


class (CsoundClass repr) => CsSinsyn repr  where
  sinsyn ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSleighbells repr  where
  sleighbells ::
    KSig repr
    -> INum repr
    -> repr (ASig repr)
  sleighbells' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSlider16table repr  where
  slider16table ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSlider16tablef repr  where
  slider16tablef ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSlider8table repr  where
  slider8table ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSlider8tablef repr  where
  slider8tablef ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSndload repr  where
  sndload ::
    VString repr
    -> repr ()
  sndload' :: VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSndloop repr  where
  sndloop ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, KSig repr)


class (CsoundClass repr) => CsSndwarp repr d a b c where
  sndwarp ::
    a
    -> b
    -> c
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsSndwarpst repr d a b c where
  sndwarpst ::
    a
    -> b
    -> c
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsSockrecv repr  where
  sockrecv ::
    INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSockrecvs repr  where
  sockrecvs ::
    INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSocksend repr  where
  socksend ::
    ASig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSocksends repr  where
  socksends ::
    ASig repr
    -> ASig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSoundin repr d  where
  soundin ::
    VString repr
    -> repr (TList d (ASig repr))
  soundin' :: VString repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsSoundout repr  where
  soundout ::
    ASig repr
    -> VString repr
    -> repr ()
  soundout' :: ASig repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSoundouts repr  where
  soundouts ::
    ASig repr
    -> ASig repr
    -> VString repr
    -> repr ()
  soundouts' :: ASig repr
    -> ASig repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSpace repr  where
  space ::
    ASig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsSpat3d repr  where
  spat3d ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  spat3d' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsSpat3di repr  where
  spat3di ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  spat3di' :: ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsSpat3dt repr  where
  spat3dt ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  spat3dt' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSpdist repr  where
  spdist ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsSplitrig repr  where
  splitrig ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsSprintf repr  where
  sprintf ::
    VString repr
    -> VString repr
    -> [(INum repr, INum repr)]
    -> repr (VString repr)


class (CsoundClass repr) => CsSpsend repr  where
  spsend ::
    repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsStack repr  where
  stack ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsStatevar repr  where
  statevar ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  statevar' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsStix repr  where
  stix ::
    INum repr
    -> INum repr
    -> repr (ASig repr)
  stix' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsStrcat repr  where
  strcat ::
    VString repr
    -> VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrcatk repr  where
  strcatk ::
    VString repr
    -> VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrchar repr  where
  strchar ::
    VString repr
    -> repr (INum repr)
  strchar' :: VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrchark repr a where
  strchark ::
    VString repr
    -> repr (KSig repr)
  strchark' :: VString repr
    -> a
    -> repr (KSig repr)


class (CsoundClass repr) => CsStrcmp repr  where
  strcmp ::
    VString repr
    -> VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrcmpk repr  where
  strcmpk ::
    VString repr
    -> VString repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsStrcpy repr  where
  strcpy ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrcpyk repr  where
  strcpyk ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrecv repr  where
  strecv ::
    VString repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsStreson repr  where
  streson ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsStrget repr  where
  strget ::
    INum repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrindex repr  where
  strindex ::
    VString repr
    -> VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrindexk repr  where
  strindexk ::
    VString repr
    -> VString repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsStrlen repr  where
  strlen ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrlenk repr  where
  strlenk ::
    VString repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsStrlower repr  where
  strlower ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrlowerk repr  where
  strlowerk ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrrindex repr  where
  strrindex ::
    VString repr
    -> VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrrindexk repr  where
  strrindexk ::
    VString repr
    -> VString repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsStrset repr  where
  strset ::
    INum repr
    -> VString repr
    -> repr ()


class (CsoundClass repr) => CsStrsub repr  where
  strsub ::
    VString repr
    -> repr (VString repr)
  strsub' :: VString repr
    -> INum repr
    -> INum repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrsubk repr  where
  strsubk ::
    VString repr
    -> KSig repr
    -> KSig repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrtod repr  where
  strtod ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrtol repr  where
  strtol ::
    VString repr
    -> repr (INum repr)


class (CsoundClass repr) => CsStrupper repr  where
  strupper ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStrupperk repr  where
  strupperk ::
    VString repr
    -> repr (VString repr)


class (CsoundClass repr) => CsStsend repr  where
  stsend ::
    ASig repr
    -> VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsSub repr out a b where
  sub ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsSubinstr repr d  where
  subinstr ::
    VString repr
    -> [INum repr]
    -> repr (TList d (ASig repr))


class (CsoundClass repr) => CsSubinstrinit repr  where
  subinstrinit ::
    VString repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsSum repr  where
  sum ::
    [ASig repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsSvfilter repr  where
  svfilter ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr, ASig repr)
  svfilter' :: ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsSyncgrain repr  where
  syncgrain ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSyncloop repr  where
  syncloop ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  syncloop' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsSyncphasor repr a where
  syncphasor ::
    a
    -> ASig repr
    -> repr (ASig repr, ASig repr)
  syncphasor' :: a
    -> ASig repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsSystem repr a where
  system ::
    KSig repr
    -> VString repr
    -> repr (KSig repr)
  system' :: KSig repr
    -> VString repr
    -> a
    -> repr (KSig repr)


class (CsoundClass repr) => CsSystem_i repr  where
  system_i ::
    INum repr
    -> VString repr
    -> repr (INum repr)
  system_i' :: INum repr
    -> VString repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsTab repr out a where
  tab ::
    a
    -> INum repr
    -> repr out
  tab' :: a
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTab_i repr  where
  tab_i ::
    INum repr
    -> INum repr
    -> repr (INum repr)
  tab_i' :: INum repr
    -> INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsTable repr out a where
  table ::
    a
    -> INum repr
    -> repr out
  table' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTable3 repr out a where
  table3 ::
    a
    -> INum repr
    -> repr out
  table3' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTablecopy repr  where
  tablecopy ::
    KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsTablegpw repr  where
  tablegpw ::
    KSig repr
    -> repr ()


class (CsoundClass repr) => CsTablei repr out a where
  tablei ::
    a
    -> INum repr
    -> repr out
  tablei' :: a
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTableicopy repr  where
  tableicopy ::
    INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTableigpw repr  where
  tableigpw ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTableikt repr out a where
  tableikt ::
    a
    -> KSig repr
    -> repr out
  tableikt' :: a
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTableimix repr  where
  tableimix ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTableiw repr  where
  tableiw ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  tableiw' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTablekt repr out a where
  tablekt ::
    a
    -> KSig repr
    -> repr out
  tablekt' :: a
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsTablemix repr  where
  tablemix ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsTableng repr out  where
  tableng ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTablera repr  where
  tablera ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTableseg repr  where
  tableseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsTablew repr a b where
  tablew ::
    a
    -> b
    -> INum repr
    -> repr ()
  tablew' :: a
    -> b
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTablewa repr  where
  tablewa ::
    KSig repr
    -> ASig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTablewkt repr a b where
  tablewkt ::
    a
    -> b
    -> KSig repr
    -> repr ()
  tablewkt' :: a
    -> b
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTablexkt repr a where
  tablexkt ::
    a
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  tablexkt' :: a
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTablexseg repr  where
  tablexseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsTabmorph repr  where
  tabmorph ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [INum repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsTabmorpha repr  where
  tabmorpha ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> [INum repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsTabmorphak repr  where
  tabmorphak ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [INum repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsTabmorphi repr  where
  tabmorphi ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [INum repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsTabplay repr  where
  tabplay ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsTabrec repr  where
  tabrec ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsTabsum repr a b where
  tabsum ::
    INum repr
    -> repr (KSig repr)
  tabsum' :: INum repr
    -> a
    -> b
    -> repr (KSig repr)


class (CsoundClass repr) => CsTabw repr a b where
  tabw ::
    a
    -> b
    -> INum repr
    -> repr ()
  tabw' :: a
    -> b
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTabw_i repr  where
  tabw_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  tabw_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTambourine repr  where
  tambourine ::
    KSig repr
    -> INum repr
    -> repr (ASig repr)
  tambourine' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTan repr out a where
  tan ::
    a
    -> repr out


class (CsoundClass repr) => CsTanh repr out a where
  tanh ::
    a
    -> repr out


class (CsoundClass repr) => CsTaninv repr out a where
  taninv ::
    a
    -> repr out


class (CsoundClass repr) => CsTaninv2 repr out a b where
  taninv2 ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsTb0 repr out  where
  tb0 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb0_init repr  where
  tb0_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb1 repr out  where
  tb1 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb10 repr out  where
  tb10 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb10_init repr  where
  tb10_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb11 repr out  where
  tb11 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb11_init repr  where
  tb11_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb12 repr out  where
  tb12 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb12_init repr  where
  tb12_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb13 repr out  where
  tb13 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb13_init repr  where
  tb13_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb14 repr out  where
  tb14 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb14_init repr  where
  tb14_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb15 repr out  where
  tb15 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb15_init repr  where
  tb15_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb1_init repr  where
  tb1_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb2 repr out  where
  tb2 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb2_init repr  where
  tb2_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb3 repr out  where
  tb3 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb3_init repr  where
  tb3_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb4 repr out  where
  tb4 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb4_init repr  where
  tb4_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb5 repr out  where
  tb5 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb5_init repr  where
  tb5_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb6 repr out  where
  tb6 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb6_init repr  where
  tb6_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb7 repr out  where
  tb7 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb7_init repr  where
  tb7_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb8 repr out  where
  tb8 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb8_init repr  where
  tb8_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTb9 repr out  where
  tb9 ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTb9_init repr  where
  tb9_init ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsTbvcf repr a b where
  tbvcf ::
    ASig repr
    -> a
    -> b
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  tbvcf' :: ASig repr
    -> a
    -> b
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTempest repr  where
  tempest ::
    KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)
  tempest' :: KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTempo repr  where
  tempo ::
    KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsTempoval repr  where
  tempoval ::
    repr (KSig repr)


class (CsoundClass repr) => CsTimedseq repr  where
  timedseq ::
    KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr (KSig repr)


class (CsoundClass repr) => CsTimeinstk repr  where
  timeinstk ::
    repr (KSig repr)


class (CsoundClass repr) => CsTimeinsts repr  where
  timeinsts ::
    repr (KSig repr)


class (CsoundClass repr) => CsTimek repr out  where
  timek ::
    repr out


class (CsoundClass repr) => CsTimes repr out  where
  times ::
    repr out


class (CsoundClass repr) => CsTival repr  where
  tival ::
    repr (INum repr)


class (CsoundClass repr) => CsTlineto repr  where
  tlineto ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTone repr  where
  tone ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  tone' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTonek repr  where
  tonek ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)
  tonek' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTonex repr  where
  tonex ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  tonex' :: ASig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTradsyn repr  where
  tradsyn ::
    FSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsTrandom repr  where
  trandom ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTranseg repr out  where
  transeg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr out


class (CsoundClass repr) => CsTransegr repr out  where
  transegr ::
    INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr out


class (CsoundClass repr) => CsTrcross repr  where
  trcross ::
    FSig repr
    -> FSig repr
    -> KSig repr
    -> [KSig repr]
    -> repr (FSig repr)


class (CsoundClass repr) => CsTrfilter repr  where
  trfilter ::
    FSig repr
    -> KSig repr
    -> INum repr
    -> repr (FSig repr)


class (CsoundClass repr) => CsTrigger repr  where
  trigger ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsTrigseq repr  where
  trigseq ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsTrirand repr out  where
  trirand ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsTrmix repr  where
  trmix ::
    FSig repr
    -> FSig repr
    -> repr (FSig repr)


class (CsoundClass repr) => CsTrscale repr  where
  trscale ::
    FSig repr
    -> [KSig repr]
    -> repr (FSig repr)


class (CsoundClass repr) => CsTrshift repr  where
  trshift ::
    FSig repr
    -> [KSig repr]
    -> repr (FSig repr)


class (CsoundClass repr) => CsTrsplit repr  where
  trsplit ::
    FSig repr
    -> [KSig repr]
    -> repr (FSig repr, FSig repr)


class (CsoundClass repr) => CsTurnoff repr  where
  turnoff ::
    repr ()


class (CsoundClass repr) => CsTurnoff2 repr  where
  turnoff2 ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsTurnon repr  where
  turnon ::
    VString repr
    -> repr ()
  turnon' :: VString repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsUnirand repr out  where
  unirand ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsUpsamp repr  where
  upsamp ::
    KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsUrd repr out  where
  urd ::
    KSig repr
    -> repr out


class (CsoundClass repr) => CsVadd repr a b where
  vadd ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  vadd' :: INum repr
    -> KSig repr
    -> KSig repr
    -> a
    -> b
    -> repr ()


class (CsoundClass repr) => CsVadd_i repr  where
  vadd_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vadd_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVaddv repr a b c where
  vaddv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vaddv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVaddv_i repr  where
  vaddv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vaddv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVaget repr  where
  vaget ::
    KSig repr
    -> ASig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsValpass repr a where
  valpass ::
    ASig repr
    -> KSig repr
    -> a
    -> INum repr
    -> repr (ASig repr)
  valpass' :: ASig repr
    -> KSig repr
    -> a
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVaset repr  where
  vaset ::
    KSig repr
    -> KSig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsVbap4 repr a b where
  vbap4 ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  vbap4' :: ASig repr
    -> KSig repr
    -> a
    -> b
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsVbap4move repr  where
  vbap4move ::
    ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsVbaplsinit repr  where
  vbaplsinit ::
    INum repr
    -> INum repr
    -> repr ()
  vbaplsinit' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVbapz repr a b where
  vbapz ::
    INum repr
    -> INum repr
    -> ASig repr
    -> KSig repr
    -> repr ()
  vbapz' :: INum repr
    -> INum repr
    -> ASig repr
    -> KSig repr
    -> a
    -> b
    -> repr ()


class (CsoundClass repr) => CsVbapzmove repr  where
  vbapzmove ::
    INum repr
    -> INum repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVcella repr  where
  vcella ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vcella' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVco2 repr a where
  vco2 ::
    KSig repr
    -> KSig repr
    -> repr (ASig repr)
  vco2' :: KSig repr
    -> KSig repr
    -> INum repr
    -> [a]
    -> repr (ASig repr)


class (CsoundClass repr) => CsVco2ft repr  where
  vco2ft ::
    KSig repr
    -> repr (KSig repr)
  vco2ft' :: KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsVco2ift repr  where
  vco2ift ::
    INum repr
    -> repr (INum repr)
  vco2ift' :: INum repr
    -> INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsVco2init repr  where
  vco2init ::
    INum repr
    -> repr (INum repr)
  vco2init' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsVcomb repr a where
  vcomb ::
    ASig repr
    -> KSig repr
    -> a
    -> INum repr
    -> repr (ASig repr)
  vcomb' :: ASig repr
    -> KSig repr
    -> a
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVcopy repr a b c where
  vcopy ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vcopy' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVcopy_i repr  where
  vcopy_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vcopy_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVdel_k repr  where
  vdel_k ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)
  vdel_k' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsVdelayk repr  where
  vdelayk ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)
  vdelayk' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsVdelayx repr  where
  vdelayx ::
    ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  vdelayx' :: ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVdelayxq repr  where
  vdelayxq ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  vdelayxq' :: ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsVdelayxs repr  where
  vdelayxs ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  vdelayxs' :: ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsVdelayxw repr  where
  vdelayxw ::
    ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  vdelayxw' :: ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVdelayxwq repr  where
  vdelayxwq ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)
  vdelayxwq' :: ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr, ASig repr, ASig repr)


class (CsoundClass repr) => CsVdelayxws repr  where
  vdelayxws ::
    ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)
  vdelayxws' :: ASig repr
    -> ASig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr, ASig repr)


class (CsoundClass repr) => CsVdivv repr a b c where
  vdivv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vdivv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVdivv_i repr  where
  vdivv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vdivv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVecdelay repr  where
  vecdelay ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vecdelay' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVeloc repr  where
  veloc ::
    repr (INum repr)
  veloc' :: INum repr
    -> INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsVexp repr a b where
  vexp ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  vexp' :: INum repr
    -> KSig repr
    -> KSig repr
    -> a
    -> b
    -> repr ()


class (CsoundClass repr) => CsVexp_i repr  where
  vexp_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vexp_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVexpseg repr  where
  vexpseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsVexpv repr a b c where
  vexpv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vexpv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVexpv_i repr  where
  vexpv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vexpv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVibes repr  where
  vibes ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVibr repr  where
  vibr ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsVibrato repr  where
  vibrato ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr)
  vibrato' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsVincr repr  where
  vincr ::
    ASig repr
    -> ASig repr
    -> repr ()


class (CsoundClass repr) => CsVlimit repr  where
  vlimit ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVlinseg repr  where
  vlinseg ::
    INum repr
    -> INum repr
    -> INum repr
    -> [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsVlowres repr  where
  vlowres ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVmap repr  where
  vmap ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vmap' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVmirror repr  where
  vmirror ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVmult repr a b where
  vmult ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  vmult' :: INum repr
    -> KSig repr
    -> KSig repr
    -> a
    -> b
    -> repr ()


class (CsoundClass repr) => CsVmult_i repr  where
  vmult_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vmult_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVmultv repr a b c where
  vmultv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vmultv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVmultv_i repr  where
  vmultv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vmultv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVoice repr  where
  voice ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVosim repr  where
  vosim ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  vosim' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVphaseseg repr  where
  vphaseseg ::
    KSig repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVport repr  where
  vport ::
    INum repr
    -> KSig repr
    -> INum repr
    -> repr ()
  vport' :: INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVpow repr a b where
  vpow ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  vpow' :: INum repr
    -> KSig repr
    -> KSig repr
    -> a
    -> b
    -> repr ()


class (CsoundClass repr) => CsVpow_i repr  where
  vpow_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vpow_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVpowv repr a b c where
  vpowv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vpowv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVpowv_i repr  where
  vpowv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vpowv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVpvoc repr  where
  vpvoc ::
    KSig repr
    -> KSig repr
    -> VString repr
    -> repr (ASig repr)
  vpvoc' :: KSig repr
    -> KSig repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsVrandh repr  where
  vrandh ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()
  vrandh' :: INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVrandi repr  where
  vrandi ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()
  vrandi' :: INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVsubv repr a b c where
  vsubv ::
    INum repr
    -> INum repr
    -> KSig repr
    -> repr ()
  vsubv' :: INum repr
    -> INum repr
    -> KSig repr
    -> a
    -> b
    -> c
    -> repr ()


class (CsoundClass repr) => CsVsubv_i repr  where
  vsubv_i ::
    INum repr
    -> INum repr
    -> INum repr
    -> repr ()
  vsubv_i' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsVtaba repr  where
  vtaba ::
    ASig repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsVtabi repr  where
  vtabi ::
    INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVtabk repr  where
  vtabk ::
    KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsVtable1k repr  where
  vtable1k ::
    KSig repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsVtablea repr  where
  vtablea ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsVtablei repr  where
  vtablei ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVtablek repr  where
  vtablek ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsVtablewa repr  where
  vtablewa ::
    ASig repr
    -> KSig repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsVtablewi repr  where
  vtablewi ::
    INum repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVtablewk repr  where
  vtablewk ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsVtabwa repr  where
  vtabwa ::
    ASig repr
    -> INum repr
    -> [ASig repr]
    -> repr ()


class (CsoundClass repr) => CsVtabwi repr  where
  vtabwi ::
    INum repr
    -> INum repr
    -> [INum repr]
    -> repr ()


class (CsoundClass repr) => CsVtabwk repr  where
  vtabwk ::
    KSig repr
    -> INum repr
    -> [KSig repr]
    -> repr ()


class (CsoundClass repr) => CsVwrap repr  where
  vwrap ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsWaveset repr  where
  waveset ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)
  waveset' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWeibull repr out  where
  weibull ::
    KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsWgbow repr  where
  wgbow ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  wgbow' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgbowedbar repr  where
  wgbowedbar ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)
  wgbowedbar' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgbrass repr  where
  wgbrass ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  wgbrass' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgclar repr  where
  wgclar ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  wgclar' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgflute repr  where
  wgflute ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (ASig repr)
  wgflute' :: KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgpluck repr  where
  wgpluck ::
    INum repr
    -> INum repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> ASig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWgpluck2 repr  where
  wgpluck2 ::
    INum repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWguide1 repr a where
  wguide1 ::
    ASig repr
    -> a
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWguide2 repr a b where
  wguide2 ::
    ASig repr
    -> a
    -> b
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsWrap repr out a where
  wrap ::
    a
    -> KSig repr
    -> KSig repr
    -> repr out


class (CsoundClass repr) => CsWterrain repr  where
  wterrain ::
    KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsXadsr repr out  where
  xadsr ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out
  xadsr' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr out


class (CsoundClass repr) => CsXor repr out a b where
  xor ::
    a
    -> b
    -> repr out


class (CsoundClass repr) => CsXout repr  where
  xout ::
    [(INum repr, INum repr)]
    -> repr ()


class (CsoundClass repr) => CsXscanmap repr  where
  xscanmap ::
    INum repr
    -> KSig repr
    -> KSig repr
    -> repr (KSig repr, KSig repr)
  xscanmap' :: INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsXscans repr  where
  xscans ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)
  xscans' :: KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsXscansmap repr  where
  xscansmap ::
    KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> repr ()
  xscansmap' :: KSig repr
    -> KSig repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsXscanu repr  where
  xscanu ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> VString repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> KSig repr
    -> KSig repr
    -> ASig repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsXtratim repr  where
  xtratim ::
    INum repr
    -> repr ()


class (CsoundClass repr) => CsXyin repr  where
  xyin ::
    INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)
  xyin' :: INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> INum repr
    -> repr (KSig repr, KSig repr)


class (CsoundClass repr) => CsZacl repr  where
  zacl ::
    KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsZakinit repr  where
  zakinit ::
    INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsZamod repr  where
  zamod ::
    ASig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsZar repr  where
  zar ::
    KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsZarg repr  where
  zarg ::
    KSig repr
    -> KSig repr
    -> repr (ASig repr)


class (CsoundClass repr) => CsZaw repr  where
  zaw ::
    ASig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsZawm repr  where
  zawm ::
    ASig repr
    -> KSig repr
    -> repr ()
  zawm' :: ASig repr
    -> KSig repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsZfilter2 repr  where
  zfilter2 ::
    ASig repr
    -> KSig repr
    -> KSig repr
    -> INum repr
    -> INum repr
    -> [INum repr]
    -> repr (ASig repr)


class (CsoundClass repr) => CsZir repr  where
  zir ::
    INum repr
    -> repr (INum repr)


class (CsoundClass repr) => CsZiw repr  where
  ziw ::
    INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsZiwm repr  where
  ziwm ::
    INum repr
    -> INum repr
    -> repr ()
  ziwm' :: INum repr
    -> INum repr
    -> INum repr
    -> repr ()


class (CsoundClass repr) => CsZkcl repr  where
  zkcl ::
    KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsZkmod repr  where
  zkmod ::
    KSig repr
    -> KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsZkr repr  where
  zkr ::
    KSig repr
    -> repr (KSig repr)


class (CsoundClass repr) => CsZkw repr  where
  zkw ::
    KSig repr
    -> KSig repr
    -> repr ()


class (CsoundClass repr) => CsZkwm repr  where
  zkwm ::
    KSig repr
    -> KSig repr
    -> repr ()
  zkwm' :: KSig repr
    -> KSig repr
    -> INum repr
    -> repr ()