namespace boost {
namespace algorithm {
template<typename BidiIter, typename T>
BOOST_CXX14_CONSTEXPR BidiIter
find_backward(BidiIter first, BidiIter last, const T & x);
template<typename Range, typename T>
BOOST_CXX14_CONSTEXPR boost::range_iterator< Range >::type
find_backward(Range & range, const T & x);
template<typename BidiIter, typename T>
BOOST_CXX14_CONSTEXPR BidiIter
find_not_backward(BidiIter first, BidiIter last, const T & x);
template<typename Range, typename T>
BOOST_CXX14_CONSTEXPR boost::range_iterator< Range >::type
find_not_backward(Range & range, const T & x);
template<typename BidiIter, typename Pred>
BOOST_CXX14_CONSTEXPR BidiIter
find_if_backward(BidiIter first, BidiIter last, Pred p);
template<typename Range, typename Pred>
BOOST_CXX14_CONSTEXPR boost::range_iterator< Range >::type
find_if_backward(Range & range, Pred p);
template<typename BidiIter, typename Pred>
BOOST_CXX14_CONSTEXPR BidiIter
find_if_not_backward(BidiIter first, BidiIter last, Pred p);
template<typename Range, typename Pred>
BOOST_CXX14_CONSTEXPR boost::range_iterator< Range >::type
find_if_not_backward(Range & range, Pred p);
}
}