adding lpushx and rpushx