marker interface patterns