modified all to fit new provider pattern
new pattern for controllers