completing layer3