looping describes
apply origin constructor in new class constructor