added Applicable interface