Changing technique to use same code path in all cases