proc SCHEMATIC_qam_16 {} {
make input -name x -origin {-80 -40}
make input -name clk -origin {-80 0}
make output -name real -origin {0 -40}
make output -name imag -origin {0 0}
}

proc ICON_qam_16 args {
  icon_setup $args {{origin {0 0}} {orient R0} {name x}}
icon_term -type input -origin {-100 0} -name x
icon_term -type input -origin {-100 20} -name clk
icon_term -type output -origin {100 0} -name real
icon_term -type output -origin {100 20} -name imag
icon_property -origin {-90 0} -label x
icon_property -origin {-90 20} -label clk
icon_property -origin {90 0} -anchor e -label real
icon_property -origin {90 20} -anchor e -label imag
icon_property -origin {-90 -50} -label {$name}
icon_property -origin {-20 0} -label qam_16
  icon_line -100 -40 100 -40 100 40 -100 40 -100 -40
  icon_property -origin {-90 110} -type user -name name -default x
}

