struct DListNode{
int key;
int value;
DListNode* prev;
DListNode* next;
DListNode() : key(0), value(0), prev(nullptr), next(nullptr){
}
DListNode(int key_, int value_) : key(key_), value(value_), prev(nullptr), next(nullptr){
}
};