proc SCHEMATIC_vcvs {} {



make input -name in -origin {340 140}
make output -name out -origin {470 140}
make input -name ref_in -origin {340 210}
make output -name ref_out -origin {470 210}



}

proc ICON_vcvs args {
  icon_setup $args {{origin {0 0}} {orient R0} {name E} {gain 1.0}}
icon_term -type input -origin {-60 -20} -name in
icon_term -type output -origin {70 -20} -name out
icon_term -type output -origin {70 60} -name ref_out
icon_term -type input -origin {-60 60} -name ref_in
icon_property -origin {-60 -30} -label in
icon_property -origin {-60 70} -label ref_in
icon_property -origin {70 -30} -anchor e -label out
icon_property -origin {-20 -40} -label {$name}
icon_property -origin {-20 -20} -label vcvs
icon_property -origin {60 20} -label {gain=$gain}
  icon_property -origin {-90 110} -type user -name name -default E
  icon_property -origin {-90 130} -type user -name gain -default 1.0
icon_property -origin {70 70} -anchor e -label ref_out
  icon_property -origin {-190 160} -type fixed -name spice -text {$name $out $ref_out $in $ref_in $gain}
  icon_line 30 -10 10 20 30 50 50 20 30 -10
  icon_line 20 10 40 10
  icon_line 30 0 30 20
  icon_line 20 30 40 30
  icon_line 70 -20 30 -20 30 -10
  icon_line 70 60 30 60 30 50
  icon_line -50 0 -30 0
  icon_line -40 -10 -40 10
  icon_line -50 40 -30 40
  icon_line -60 -20 -30 -20 -30 -10
  icon_line -60 60 -30 60 -30 50
}

