Implementowanie określonych reguł odsunięcia

Wspólną cechą wszystkich reguł jest publiczna abstrakcyjna metoda Apply, w przypadku której typ wyniku i argumenty są cechą typu reguły. Metoda ta musi być implementowana przez każdą nową klasę reguły.