Auto shift assignment

In progress