#include <iostream>
#include <list>
using namespace std;
template <typename T>
class Hybrid
{
public:
Hybrid() : m_activeStackSize(0) {}
private:
std::list<T> data;
size_t m_activeStackSize;
auto internal_peek() -> typename decltype(data)::iterator
{
if (m_activeStackSize) // peek from stack
{
typename decltype(data)::iterator itr = data.end();
std::advance(itr, -1);
return itr;
}
else //peek from queue
{
typename decltype(data)::iterator itr = data.begin();
return itr;
}
}
};
int main() {
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bGlzdD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnRlbXBsYXRlIDx0eXBlbmFtZSBUPgpjbGFzcyBIeWJyaWQKewpwdWJsaWM6CiAgICBIeWJyaWQoKSA6IG1fYWN0aXZlU3RhY2tTaXplKDApIHt9Cgpwcml2YXRlOgogICAgc3RkOjpsaXN0PFQ+IGRhdGE7CgogICAgc2l6ZV90IG1fYWN0aXZlU3RhY2tTaXplOwoKICAgIGF1dG8gaW50ZXJuYWxfcGVlaygpIC0+IHR5cGVuYW1lIGRlY2x0eXBlKGRhdGEpOjppdGVyYXRvcgogICAgewogICAgICAgIGlmIChtX2FjdGl2ZVN0YWNrU2l6ZSkgLy8gcGVlayBmcm9tIHN0YWNrCiAgICAgICAgewogICAgICAgICAgICB0eXBlbmFtZSBkZWNsdHlwZShkYXRhKTo6aXRlcmF0b3IgaXRyID0gZGF0YS5lbmQoKTsKICAgICAgICAgICAgc3RkOjphZHZhbmNlKGl0ciwgLTEpOwogICAgICAgICAgICByZXR1cm4gaXRyOwogICAgICAgIH0KICAgICAgICBlbHNlIC8vcGVlayBmcm9tIHF1ZXVlCiAgICAgICAgewogICAgICAgICAgICB0eXBlbmFtZSBkZWNsdHlwZShkYXRhKTo6aXRlcmF0b3IgaXRyID0gZGF0YS5iZWdpbigpOwogICAgICAgICAgICByZXR1cm4gaXRyOwogICAgICAgIH0KICAgIH0KfTsKCmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJcmV0dXJuIDA7Cn0=