adding weak variable equivalency checking and an @if statement