Ranges and variable structure