sig
  type projection
  and marker
  and matchinghalf
  and submarker
  and splitmessage
  and joinmessage
  and matching = Swarm.EXPOSURE.matchinghalf * Swarm.EXPOSURE.matchinghalf
  and bindhalf
  val matchings :
    Swarm.EXPOSURE.marker * Swarm.EXPOSURE.marker ->
    Swarm.EXPOSURE.matching list
  val affinity : Swarm.EXPOSURE.matching -> int
end