func New(kin *kinfolk.Kin, topic string) *Tube { t := &Tube{ lookup: make(map[string]int), downstream: kinfolk.NewRotor(), } t.permXID = kinfolk.FolkXID{ X: circuit.PermRef(XTube{t}), ID: lang.ComputeReceiverID(t), } t.folk = kin.Attach(topic, t.permXID) go t.loop() return t }