using std::list;
using std::vector;
using std::cout;
-using boost::shared_ptr;
+using std::shared_ptr;
using boost::scoped_array;
-using boost::weak_ptr;
+using std::weak_ptr;
using boost::optional;
#if BOOST_VERSION >= 106100
using namespace boost::placeholders;