      # //// Ruby-DCL original extention methods ////

      alias __uemrkz uemrkz 
      def uemrkz( upx,upy,z,itype,index,rsize )

        #< extract array size(s) (which was(were) formerly an argument(s)) >
        if ! ( upx == nil || upx.is_a?(Float) && lreq( upx, glrget("RUNDEF") ) )
          len_upx_0 = upx.length
          n = len_upx_0
        else
          upx = glrget("RUNDEF") if ( upx == nil )
          len_upy_0 = upy.length
          n = len_upy_0
        end

        #< check array size(s) >
        raise "Invalid array length: upx.length != n" if \
            upx!=nil && !( upx.is_a?(Float) && lreq(upx,glrget("RUNDEF")) ) && upx.length != (n)
        raise "Invalid array length: upy.length != n" if \
            upy!=nil && !( upy.is_a?(Float) && lreq(upy,glrget("RUNDEF")) ) && upy.length != (n)
        raise "Invalid array length: z.length != n" if \
            z!=nil && !( z.is_a?(Float) && lreq(z,glrget("RUNDEF")) ) && z.length != (n)

        #< call the original method >
        __uemrkz( n,upx,upy,z,itype,index,rsize )
      end
      module_function :uemrkz, :__uemrkz 
      private_class_method :__uemrkz

