changing factory into provider
add first files for testing