relocated and documented method