added folders and splittet files for better structure