reworking repo source structure