Refactor with lazy initialization decorator