state machine , options / resolution stuff