updated file structrue