updating to xalbo's version