only require path once