public function readRecursively($objectID, $status = null) {
        $children = $this->read($objectID, $status);

        $tree = [];

        foreach ($children as $child) {
            if (!array_key_exists('id', $child)) {
                throw new RuntimeException('Broken result');
            }

            $node = $child;

            $childChildren = $this->read((int) $child['id'], $status);

            if (count($childChildren) > 0) {
                $node['children'] = $childChildren;
            }

            $tree[] = $node;
        }

        return $tree;
    }