added extra controls on instruction