а оно в отдельной функции должно работать? там ведь тайп параметры у NoOutput зашиты, и они не обязательно совпадают с T и O
а у нас сейчас не настоящая?
ты боишься что сервисы внутри preBuildLayer создадутся несколько раз?
Это не подходит? https://docs.scala-lang.org/style/files.html