Implemented separate-function-body