fallback method can accept a proc