add src for part 3.1 (not tested yet)