improve source order