pause implementation