added epoch argument