#include <iostream>
class Node {
private:
int data;
Node* nextLeftNode;
Node* nextRightNode;
public:
Node() : data(NULL), nextLeftNode(nullptr), nextRightNode(nullptr) {};
Node(const int& data) : data(data), nextLeftNode(nullptr), nextRightNode(nullptr) {};
void insertNode(Node& newNode) {
if (this->data == NULL) {
this->data = newNode.data;
return;
}
if (newNode.data <= data) {
if (this->nextLeftNode == nullptr) {
this->nextLeftNode = &newNode;
return;
}
this->nextLeftNode->insertNode(newNode);
}
else {
if (this->nextRightNode == nullptr) {
this->nextRightNode = &newNode;
return;
}
this->nextRightNode->insertNode(newNode);
}
}
int findMinVal() {
Node* tempNode = this;
while (true) {
if (nextLeftNode == NULL) {
break;
}
else {
tempNode = this->nextLeftNode;
}
}
return this->data;
}
};
int main() {
int testCase, numberOfInput, val;
std::cin >> testCase;
for (int i = 0; i < testCase; ++i) {
std::cin >> numberOfInput;
Node node;
for (int j = 0; j < numberOfInput; ++j) {
std::cin >> val;
Node newNode(val);
node.insertNode(newNode);
}
std::cout << node.findMinVal() << '\n';
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgTm9kZSB7CnByaXZhdGU6CglpbnQgZGF0YTsKCU5vZGUqIG5leHRMZWZ0Tm9kZTsKCU5vZGUqIG5leHRSaWdodE5vZGU7CgpwdWJsaWM6CglOb2RlKCkgOiBkYXRhKE5VTEwpLCBuZXh0TGVmdE5vZGUobnVsbHB0ciksIG5leHRSaWdodE5vZGUobnVsbHB0cikge307CglOb2RlKGNvbnN0IGludCYgZGF0YSkgOiBkYXRhKGRhdGEpLCBuZXh0TGVmdE5vZGUobnVsbHB0ciksIG5leHRSaWdodE5vZGUobnVsbHB0cikge307CgkKCXZvaWQgaW5zZXJ0Tm9kZShOb2RlJiBuZXdOb2RlKSB7CgkJaWYgKHRoaXMtPmRhdGEgPT0gTlVMTCkgewoJCQl0aGlzLT5kYXRhID0gbmV3Tm9kZS5kYXRhOwoJCQlyZXR1cm47CgkJfQoKCQlpZiAobmV3Tm9kZS5kYXRhIDw9IGRhdGEpIHsKCQkJaWYgKHRoaXMtPm5leHRMZWZ0Tm9kZSA9PSBudWxscHRyKSB7CgkJCQl0aGlzLT5uZXh0TGVmdE5vZGUgPSAmbmV3Tm9kZTsKCQkJCXJldHVybjsKCQkJfQoJCQl0aGlzLT5uZXh0TGVmdE5vZGUtPmluc2VydE5vZGUobmV3Tm9kZSk7CgkJfQoJCWVsc2UgewoJCQlpZiAodGhpcy0+bmV4dFJpZ2h0Tm9kZSA9PSBudWxscHRyKSB7CgkJCQl0aGlzLT5uZXh0UmlnaHROb2RlID0gJm5ld05vZGU7CgkJCQlyZXR1cm47CgkJCX0KCQkJdGhpcy0+bmV4dFJpZ2h0Tm9kZS0+aW5zZXJ0Tm9kZShuZXdOb2RlKTsKCQl9Cgl9CgoJaW50IGZpbmRNaW5WYWwoKSB7CgkJTm9kZSogdGVtcE5vZGUgPSB0aGlzOwoJCXdoaWxlICh0cnVlKSB7CgkJCWlmIChuZXh0TGVmdE5vZGUgPT0gTlVMTCkgewoJCQkJYnJlYWs7CgkJCX0KCQkJZWxzZSB7CgkJCQl0ZW1wTm9kZSA9IHRoaXMtPm5leHRMZWZ0Tm9kZTsKCQkJfQoJCX0KCQlyZXR1cm4gdGhpcy0+ZGF0YTsKCX0KfTsKCmludCBtYWluKCkgewoJaW50IHRlc3RDYXNlLCBudW1iZXJPZklucHV0LCB2YWw7CglzdGQ6OmNpbiA+PiB0ZXN0Q2FzZTsKCWZvciAoaW50IGkgPSAwOyBpIDwgdGVzdENhc2U7ICsraSkgewoJCXN0ZDo6Y2luID4+IG51bWJlck9mSW5wdXQ7CgkJTm9kZSBub2RlOwoJCWZvciAoaW50IGogPSAwOyBqIDwgbnVtYmVyT2ZJbnB1dDsgKytqKSB7CgkJCXN0ZDo6Y2luID4+IHZhbDsKCQkJTm9kZSBuZXdOb2RlKHZhbCk7CgkJCW5vZGUuaW5zZXJ0Tm9kZShuZXdOb2RlKTsKCQl9CgkJc3RkOjpjb3V0IDw8IG5vZGUuZmluZE1pblZhbCgpIDw8ICdcbic7Cgl9Cn0=