protected function _vars($data, $isExpanded = false)
    {
        $_is_object = is_object($data);

        ?>
        <div class="jbnest" style="<?php echo $isExpanded ? 'display:block' : 'display:none'; ?>">
            <ul class="jbnode">
                <?php
                $keys = ($_is_object) ? array_keys(@get_object_vars($data)) : array_keys($data);

                // sorting
                if (self::$_config['sort']['object'] && $_is_object) {
                    sort($keys);
                } elseif (self::$_config['sort']['array']) {
                    sort($keys);
                }

                // get entries
                foreach ($keys as $key) {
                    $value = null;
                    if ($_is_object && property_exists($data, $key)) {
                        $value = $data->$key;
                    } else {
                        if (is_array($data) && array_key_exists($key, $data)) {
                            $value = $data[$key];
                        }
                    }

                    $this->_dump($value, $key);
                }

                // get methods
                if ($_is_object && self::$_config['dump']['showMethods']) {
                    if ($methods = $this->_getMethods($data)) {
                        $this->_dump($methods, '&lt;! methods of "' . get_class($data) . '" !&gt;');
                    }
                }
                ?>
            </ul>
        </div>
    <?php
    }