define.class("$server/composition",function($server$,service,$ui$,screen,$flow$displays$,debug,outputs,$flow$services$,debugd){
  
  this.render=function(){
    return [
      debugd({name:"ports",flowdata:{x:392,y:428},number:wire("this.rpc.a.number"),object:wire("{\"a.boolean\":this.rpc.a.boolean,\"a.object\":this.rpc.a.object,\"debug0.outstring\":this.rpc.debug0.outstring}"),string:wire("this.rpc.debug0.outstring")}),
      outputs({name:"a",flowdata:{x:15,y:221,screen:true}}),
      debug({name:'debug0',clearcolor:'#484230',flowdata:{x:385,y:58,screen:true},number:wire("this.rpc.a.number"),object:wire("{\"a.float\":this.rpc.a.float,\"a.int\":this.rpc.a.int,\"a.string\":this.rpc.a.string}"),string:wire("this.rpc.a.string")}),
      debug({name:"debug1",flowdata:{x:942,y:160,screen:true},array:wire("[this.rpc.debug0.outnumber,this.rpc.ports.outnumber]"),object:wire("{\"debug0.outobject\":this.rpc.debug0.outobject,\"ports.outobject\":this.rpc.ports.outobject}"),string:wire("this.rpc.ports.outstring")})
    ]
  }
  
})
@@ -410,28 +410,68 @@
 .outstring%22)
+,array:wire(%22this.rpc.debugd0.outarray%22)
 %7D),%0A
-
       output
@@ -768,16 +768,57 @@
 string%22)
+,array:wire(%22%5Bthis.rpc.ports.outstring%5D%22)
 %7D),%0A    
@@ -1082,22 +1082,135 @@
 orts.out
-string
+array%22)%7D),%0A      debugd(%7Bname:%22debugd0%22,flowdata:%7Bx:48,y:630%7D,array:wire(%22%5Bthis.rpc.debug0.outarray,this.rpc.a.boolean%5D
 %22)%7D)%0A   

use multiple services in test