code was separated