implement restrict option