first node implementation
add sample loop