use std::function without the prefix