implement preview gp
add log to worker