private HZincWriter writeDictKeyVals(HDict dict)
        {
            if (dict.isEmpty())
            {
                return(this);
            }
            bool bFirst = true;

            for (int i = 0; i < dict.size(); i++)
            {
                string name = dict.getKeyAt(i, false);
                if (name != null)
                {
                    HVal val = (HVal)dict.get(name, false);
                    if (!bFirst)
                    {
                        p(' ');
                    }
                    p(name);
                    if (val != HMarker.VAL)
                    {
                        p(':').writeVal(val);
                    }
                    bFirst = false;
                }
            }
            flush();
            return(this);
        }
 private HZincWriter writeMeta(HDict meta)
 {
     if (meta.isEmpty())
     {
         return(this);
     }
     p(' ');
     flush();
     return(writeDictKeyVals(meta));
 }