basic port finished