update boost::any
add boost::variant