In file included from C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/vector:62:0,
from C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/adjacency_list.hpp:17,
from a.cpp:2:
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_construct.h: In instantiation of 'void std::_Construct(_T1*, _Args&& ...) [with _T1 = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex; _Args = {boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex}]':
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_uninitialized.h:75:53: required from 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*>; _ForwardIterator = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*; bool _TrivialValueTypes = false]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_uninitialized.h:125:41: required from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = std::move_iterator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*>; _ForwardIterator = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_uninitialized.h:278:63: required from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator<_Tp>&) [with _InputIterator = std::move_iterator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*>; _ForwardIterator = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*; _Tp = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_uninitialized.h:301:69: required from '_ForwardIterator std::__uninitialized_move_if_noexcept_a(_InputIterator, _InputIterator, _ForwardIterator, _Allocator&) [with _InputIterator = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*; _ForwardIterator = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex*; _Allocator = std::allocator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex>]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/vector.tcc:564:42: required from 'void std::vector<_Tp, _Alloc>::_M_default_append(std::vector<_Tp, _Alloc>::size_type) [with _Tp = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex; _Alloc = std::allocator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex>; std::vector<_Tp, _Alloc>::size_type = long long unsigned int]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_vector.h:676:41: required from 'void std::vector<_Tp, _Alloc>::resize(std::vector<_Tp, _Alloc>::size_type) [with _Tp = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex; _Alloc = std::allocator<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex>; std::vector<_Tp, _Alloc>::size_type = long long unsigned int]'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/detail/adjacency_list.hpp:2192:7: required from 'typename Config::vertex_descriptor boost::add_vertex(boost::vec_adj_list_impl<G, C, B>&) [with Graph = boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>; Config = boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config; Base = boost::undirected_graph_helper<boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config>; typename Config::vertex_descriptor = long long unsigned int]'
a.cpp:17:21: required from here
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/bits/stl_construct.h:75:7: error: use of deleted function 'boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex::stored_vertex(boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex&&)'
{ ::new(static_cast<void*>(__p)) _T1(std::forward<_Args>(__args)...); }
^
In file included from C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/adjacency_list.hpp:246:0,
from a.cpp:2:
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/detail/adjacency_list.hpp:2418:16: note: 'boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex::stored_vertex(boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::stored_vertex&&)' is implicitly deleted because the default definition would be ill-formed:
struct stored_vertex : public StoredVertex {
^
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/detail/adjacency_list.hpp:2418:16: error: use of deleted function 'boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::rand_stored_vertex::rand_stored_vertex(boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::rand_stored_vertex&&)'
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/detail/adjacency_list.hpp:2399:16: note: 'boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::rand_stored_vertex::rand_stored_vertex(boost::detail::adj_list_gen<boost::adjacency_list<boost::vecS, boost::vecS, boost::undirectedS, props>, boost::vecS, boost::vecS, boost::undirectedS, props, boost::no_property, boost::no_property, boost::listS>::config::rand_stored_vertex&&)' is implicitly deleted because the default definition would be ill-formed:
struct rand_stored_vertex {
^
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/boost/graph/detail/adjacency_list.hpp:2399:16: error: use of deleted function 'props::props(props&&)'
a.cpp:4:8: note: 'props::props(props&&)' is implicitly deleted because the default definition would be ill-formed:
struct props
^
a.cpp:4:8: error: use of deleted function 'std::atomic<_Tp>::atomic(const std::atomic<_Tp>&) [with _Tp = double]'
In file included from a.cpp:1:0:
C:/__MOJE/prog/MSYS2_Toolset64/mingw64/include/c++/4.9.2/atomic:169:7: note: declared here
atomic(const atomic&) = delete;
^
SW4gZmlsZSBpbmNsdWRlZCBmcm9tIEM6L19fTU9KRS9wcm9nL01TWVMyX1Rvb2xzZXQ2NC9taW5ndzY0L2luY2x1ZGUvYysrLzQuOS4yL3ZlY3Rvcjo2MjowLAogICAgICAgICAgICAgICAgIGZyb20gQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9ib29zdC9ncmFwaC9hZGphY2VuY3lfbGlzdC5ocHA6MTcsCiAgICAgICAgICAgICAgICAgZnJvbSBhLmNwcDoyOgpDOi9fX01PSkUvcHJvZy9NU1lTMl9Ub29sc2V0NjQvbWluZ3c2NC9pbmNsdWRlL2MrKy80LjkuMi9iaXRzL3N0bF9jb25zdHJ1Y3QuaDogSW4gaW5zdGFudGlhdGlvbiBvZiAndm9pZCBzdGQ6Ol9Db25zdHJ1Y3QoX1QxKiwgX0FyZ3MmJiAuLi4pIFt3aXRoIF9UMSA9IGJvb3N0OjpkZXRhaWw6OmFkal9saXN0X2dlbjxib29zdDo6YWRqYWNlbmN5X2xpc3Q8Ym9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzPiwgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzLCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Omxpc3RTPjo6Y29uZmlnOjpzdG9yZWRfdmVydGV4OyBfQXJncyA9IHtib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleH1dJzoKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9jKysvNC45LjIvYml0cy9zdGxfdW5pbml0aWFsaXplZC5oOjc1OjUzOiAgIHJlcXVpcmVkIGZyb20gJ3N0YXRpYyBfRm9yd2FyZEl0ZXJhdG9yIHN0ZDo6X191bmluaXRpYWxpemVkX2NvcHk8X1RyaXZpYWxWYWx1ZVR5cGVzPjo6X191bmluaXRfY29weShfSW5wdXRJdGVyYXRvciwgX0lucHV0SXRlcmF0b3IsIF9Gb3J3YXJkSXRlcmF0b3IpIFt3aXRoIF9JbnB1dEl0ZXJhdG9yID0gc3RkOjptb3ZlX2l0ZXJhdG9yPGJvb3N0OjpkZXRhaWw6OmFkal9saXN0X2dlbjxib29zdDo6YWRqYWNlbmN5X2xpc3Q8Ym9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzPiwgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzLCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Omxpc3RTPjo6Y29uZmlnOjpzdG9yZWRfdmVydGV4Kj47IF9Gb3J3YXJkSXRlcmF0b3IgPSBib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCo7IGJvb2wgX1RyaXZpYWxWYWx1ZVR5cGVzID0gZmFsc2VdJwpDOi9fX01PSkUvcHJvZy9NU1lTMl9Ub29sc2V0NjQvbWluZ3c2NC9pbmNsdWRlL2MrKy80LjkuMi9iaXRzL3N0bF91bmluaXRpYWxpemVkLmg6MTI1OjQxOiAgIHJlcXVpcmVkIGZyb20gJ19Gb3J3YXJkSXRlcmF0b3Igc3RkOjp1bmluaXRpYWxpemVkX2NvcHkoX0lucHV0SXRlcmF0b3IsIF9JbnB1dEl0ZXJhdG9yLCBfRm9yd2FyZEl0ZXJhdG9yKSBbd2l0aCBfSW5wdXRJdGVyYXRvciA9IHN0ZDo6bW92ZV9pdGVyYXRvcjxib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCo+OyBfRm9yd2FyZEl0ZXJhdG9yID0gYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnN0b3JlZF92ZXJ0ZXgqXScKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9jKysvNC45LjIvYml0cy9zdGxfdW5pbml0aWFsaXplZC5oOjI3ODo2MzogICByZXF1aXJlZCBmcm9tICdfRm9yd2FyZEl0ZXJhdG9yIHN0ZDo6X191bmluaXRpYWxpemVkX2NvcHlfYShfSW5wdXRJdGVyYXRvciwgX0lucHV0SXRlcmF0b3IsIF9Gb3J3YXJkSXRlcmF0b3IsIHN0ZDo6YWxsb2NhdG9yPF9UcD4mKSBbd2l0aCBfSW5wdXRJdGVyYXRvciA9IHN0ZDo6bW92ZV9pdGVyYXRvcjxib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCo+OyBfRm9yd2FyZEl0ZXJhdG9yID0gYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnN0b3JlZF92ZXJ0ZXgqOyBfVHAgPSBib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleF0nCkM6L19fTU9KRS9wcm9nL01TWVMyX1Rvb2xzZXQ2NC9taW5ndzY0L2luY2x1ZGUvYysrLzQuOS4yL2JpdHMvc3RsX3VuaW5pdGlhbGl6ZWQuaDozMDE6Njk6ICAgcmVxdWlyZWQgZnJvbSAnX0ZvcndhcmRJdGVyYXRvciBzdGQ6Ol9fdW5pbml0aWFsaXplZF9tb3ZlX2lmX25vZXhjZXB0X2EoX0lucHV0SXRlcmF0b3IsIF9JbnB1dEl0ZXJhdG9yLCBfRm9yd2FyZEl0ZXJhdG9yLCBfQWxsb2NhdG9yJikgW3dpdGggX0lucHV0SXRlcmF0b3IgPSBib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCo7IF9Gb3J3YXJkSXRlcmF0b3IgPSBib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCo7IF9BbGxvY2F0b3IgPSBzdGQ6OmFsbG9jYXRvcjxib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleD5dJwpDOi9fX01PSkUvcHJvZy9NU1lTMl9Ub29sc2V0NjQvbWluZ3c2NC9pbmNsdWRlL2MrKy80LjkuMi9iaXRzL3ZlY3Rvci50Y2M6NTY0OjQyOiAgIHJlcXVpcmVkIGZyb20gJ3ZvaWQgc3RkOjp2ZWN0b3I8X1RwLCBfQWxsb2M+OjpfTV9kZWZhdWx0X2FwcGVuZChzdGQ6OnZlY3RvcjxfVHAsIF9BbGxvYz46OnNpemVfdHlwZSkgW3dpdGggX1RwID0gYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnN0b3JlZF92ZXJ0ZXg7IF9BbGxvYyA9IHN0ZDo6YWxsb2NhdG9yPGJvb3N0OjpkZXRhaWw6OmFkal9saXN0X2dlbjxib29zdDo6YWRqYWNlbmN5X2xpc3Q8Ym9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzPiwgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzLCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Omxpc3RTPjo6Y29uZmlnOjpzdG9yZWRfdmVydGV4Pjsgc3RkOjp2ZWN0b3I8X1RwLCBfQWxsb2M+OjpzaXplX3R5cGUgPSBsb25nIGxvbmcgdW5zaWduZWQgaW50XScKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9jKysvNC45LjIvYml0cy9zdGxfdmVjdG9yLmg6Njc2OjQxOiAgIHJlcXVpcmVkIGZyb20gJ3ZvaWQgc3RkOjp2ZWN0b3I8X1RwLCBfQWxsb2M+OjpyZXNpemUoc3RkOjp2ZWN0b3I8X1RwLCBfQWxsb2M+OjpzaXplX3R5cGUpIFt3aXRoIF9UcCA9IGJvb3N0OjpkZXRhaWw6OmFkal9saXN0X2dlbjxib29zdDo6YWRqYWNlbmN5X2xpc3Q8Ym9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzPiwgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp2ZWNTLCBib29zdDo6dW5kaXJlY3RlZFMsIHByb3BzLCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Omxpc3RTPjo6Y29uZmlnOjpzdG9yZWRfdmVydGV4OyBfQWxsb2MgPSBzdGQ6OmFsbG9jYXRvcjxib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleD47IHN0ZDo6dmVjdG9yPF9UcCwgX0FsbG9jPjo6c2l6ZV90eXBlID0gbG9uZyBsb25nIHVuc2lnbmVkIGludF0nCkM6L19fTU9KRS9wcm9nL01TWVMyX1Rvb2xzZXQ2NC9taW5ndzY0L2luY2x1ZGUvYm9vc3QvZ3JhcGgvZGV0YWlsL2FkamFjZW5jeV9saXN0LmhwcDoyMTkyOjc6ICAgcmVxdWlyZWQgZnJvbSAndHlwZW5hbWUgQ29uZmlnOjp2ZXJ0ZXhfZGVzY3JpcHRvciBib29zdDo6YWRkX3ZlcnRleChib29zdDo6dmVjX2Fkal9saXN0X2ltcGw8RywgQywgQj4mKSBbd2l0aCBHcmFwaCA9IGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+OyBDb25maWcgPSBib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzsgQmFzZSA9IGJvb3N0Ojp1bmRpcmVjdGVkX2dyYXBoX2hlbHBlcjxib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZz47IHR5cGVuYW1lIENvbmZpZzo6dmVydGV4X2Rlc2NyaXB0b3IgPSBsb25nIGxvbmcgdW5zaWduZWQgaW50XScKYS5jcHA6MTc6MjE6ICAgcmVxdWlyZWQgZnJvbSBoZXJlCkM6L19fTU9KRS9wcm9nL01TWVMyX1Rvb2xzZXQ2NC9taW5ndzY0L2luY2x1ZGUvYysrLzQuOS4yL2JpdHMvc3RsX2NvbnN0cnVjdC5oOjc1Ojc6IGVycm9yOiB1c2Ugb2YgZGVsZXRlZCBmdW5jdGlvbiAnYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnN0b3JlZF92ZXJ0ZXg6OnN0b3JlZF92ZXJ0ZXgoYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnN0b3JlZF92ZXJ0ZXgmJiknCiAgICAgeyA6Om5ldyhzdGF0aWNfY2FzdDx2b2lkKj4oX19wKSkgX1QxKHN0ZDo6Zm9yd2FyZDxfQXJncz4oX19hcmdzKS4uLik7IH0KICAgICAgIF4KSW4gZmlsZSBpbmNsdWRlZCBmcm9tIEM6L19fTU9KRS9wcm9nL01TWVMyX1Rvb2xzZXQ2NC9taW5ndzY0L2luY2x1ZGUvYm9vc3QvZ3JhcGgvYWRqYWNlbmN5X2xpc3QuaHBwOjI0NjowLAogICAgICAgICAgICAgICAgIGZyb20gYS5jcHA6MjoKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9ib29zdC9ncmFwaC9kZXRhaWwvYWRqYWNlbmN5X2xpc3QuaHBwOjI0MTg6MTY6IG5vdGU6ICdib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleDo6c3RvcmVkX3ZlcnRleChib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6c3RvcmVkX3ZlcnRleCYmKScgaXMgaW1wbGljaXRseSBkZWxldGVkIGJlY2F1c2UgdGhlIGRlZmF1bHQgZGVmaW5pdGlvbiB3b3VsZCBiZSBpbGwtZm9ybWVkOgogICAgICAgICBzdHJ1Y3Qgc3RvcmVkX3ZlcnRleCA6IHB1YmxpYyBTdG9yZWRWZXJ0ZXggewogICAgICAgICAgICAgICAgXgpDOi9fX01PSkUvcHJvZy9NU1lTMl9Ub29sc2V0NjQvbWluZ3c2NC9pbmNsdWRlL2Jvb3N0L2dyYXBoL2RldGFpbC9hZGphY2VuY3lfbGlzdC5ocHA6MjQxODoxNjogZXJyb3I6IHVzZSBvZiBkZWxldGVkIGZ1bmN0aW9uICdib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6cmFuZF9zdG9yZWRfdmVydGV4OjpyYW5kX3N0b3JlZF92ZXJ0ZXgoYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnJhbmRfc3RvcmVkX3ZlcnRleCYmKScKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9ib29zdC9ncmFwaC9kZXRhaWwvYWRqYWNlbmN5X2xpc3QuaHBwOjIzOTk6MTY6IG5vdGU6ICdib29zdDo6ZGV0YWlsOjphZGpfbGlzdF9nZW48Ym9vc3Q6OmFkamFjZW5jeV9saXN0PGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcz4sIGJvb3N0Ojp2ZWNTLCBib29zdDo6dmVjUywgYm9vc3Q6OnVuZGlyZWN0ZWRTLCBwcm9wcywgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bm9fcHJvcGVydHksIGJvb3N0OjpsaXN0Uz46OmNvbmZpZzo6cmFuZF9zdG9yZWRfdmVydGV4OjpyYW5kX3N0b3JlZF92ZXJ0ZXgoYm9vc3Q6OmRldGFpbDo6YWRqX2xpc3RfZ2VuPGJvb3N0OjphZGphY2VuY3lfbGlzdDxib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHM+LCBib29zdDo6dmVjUywgYm9vc3Q6OnZlY1MsIGJvb3N0Ojp1bmRpcmVjdGVkUywgcHJvcHMsIGJvb3N0Ojpub19wcm9wZXJ0eSwgYm9vc3Q6Om5vX3Byb3BlcnR5LCBib29zdDo6bGlzdFM+Ojpjb25maWc6OnJhbmRfc3RvcmVkX3ZlcnRleCYmKScgaXMgaW1wbGljaXRseSBkZWxldGVkIGJlY2F1c2UgdGhlIGRlZmF1bHQgZGVmaW5pdGlvbiB3b3VsZCBiZSBpbGwtZm9ybWVkOgogICAgICAgICBzdHJ1Y3QgcmFuZF9zdG9yZWRfdmVydGV4IHsKICAgICAgICAgICAgICAgIF4KQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9ib29zdC9ncmFwaC9kZXRhaWwvYWRqYWNlbmN5X2xpc3QuaHBwOjIzOTk6MTY6IGVycm9yOiB1c2Ugb2YgZGVsZXRlZCBmdW5jdGlvbiAncHJvcHM6OnByb3BzKHByb3BzJiYpJwphLmNwcDo0Ojg6IG5vdGU6ICdwcm9wczo6cHJvcHMocHJvcHMmJiknIGlzIGltcGxpY2l0bHkgZGVsZXRlZCBiZWNhdXNlIHRoZSBkZWZhdWx0IGRlZmluaXRpb24gd291bGQgYmUgaWxsLWZvcm1lZDoKIHN0cnVjdCBwcm9wcwogICAgICAgIF4KYS5jcHA6NDo4OiBlcnJvcjogdXNlIG9mIGRlbGV0ZWQgZnVuY3Rpb24gJ3N0ZDo6YXRvbWljPF9UcD46OmF0b21pYyhjb25zdCBzdGQ6OmF0b21pYzxfVHA+JikgW3dpdGggX1RwID0gZG91YmxlXScKSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGEuY3BwOjE6MDoKQzovX19NT0pFL3Byb2cvTVNZUzJfVG9vbHNldDY0L21pbmd3NjQvaW5jbHVkZS9jKysvNC45LjIvYXRvbWljOjE2OTo3OiBub3RlOiBkZWNsYXJlZCBoZXJlCiAgICAgICBhdG9taWMoY29uc3QgYXRvbWljJikgPSBkZWxldGU7CiAgICAgICBeCg==