When registered with our forums, feel free to send a "here I am" post here to differ human beings from SPAM bots.
From where this assurance comes from?
Because it is a waste of time to implement something which will not work 100% and will be useful to very few people.
typename std::iterator_traits<typename std::remove_reference<C1>::type::iterator>::value_type();
It is very helpful to highlight template braces.