[TASK] Adjust AbstractProvider to better function with source