!7 abstract sclass DynSCPWithInput extends DynSCP { InputChooser inputChooser = new(this); visualize { ret northAndCenter(wrap(inputChooser), super.visualize()); } abstract void update(S input); void update { if (inputChooser.update()) update(inputChooser.input()); } }