why `first`?