added level changing