fully separate the scope for conditional blocks