added source info and moved into seperate include