added introduction, started reordering