rough common js compatibility