finished 16.2, tweaked 15.2 (polymorphism!)