public function append($arr)
    {
        
        if (is_a($arr, DictionaryInterface::class)) {
            $arr = $arr->getDictionary();
        }
        elseif (false === is_array($arr)){
            throw new \Exception("Not an array", 5);
        }
        
        foreach ($arr as $key => $val) {
            if (is_numeric($key)) {
                $this->setString($key, $key);
            } else {
                $this->setString($key, $val);
            }
        }
        
        return $this;
    }