protected shell almost completed