new templates
socket work