public function sort()
    {
        usort($this->set, function ($first, $second) {
            $ids = strcmp($first['id'], $second['id']);
            if ($ids === 0) {
                if ($first['context'] === null && $second['context'] === null) {
                    return 0;
                } else if ($first['context'] === null) {
                    return -1;
                } else if ($second['context'] === null) {
                    return 1;
                } else {
                    return strcmp($first['context'], $second['context']);
                }
            } else {
                return $ids;
            }
        });
    }