changed flow to always invoke