Applying strategy pattern in pascal, using interface.