Added Provider interface