checkout source function finished