almost completed Node logici, untested