Imports System.Collections.Generic
Imports System.Console

Module Program
    Sub Main()
        Dim X As Integer = NextInt()
        Dim ans As Integer = 1

        For b As Integer = 2 To X
            For p As Integer = 2 To X
                If b ^ p > X Then Exit For
                ans = CInt(Math.Max(ans, b ^ p))
            Next
        Next

        WriteLine(ans)
    End Sub

    Function NextInt() As Integer
        Return CInt(NextString())
    End Function

    Function NextString() As String
        Dim result As New List(Of Char)
        Do
            Dim tmp As Integer = Read()
            If tmp < 0 Then Exit Do
            Dim nextChar As Char = Chr(tmp)

            If Not Char.IsWhiteSpace(nextChar) Then
                result.Add(nextChar)
            ElseIf nextChar <> vbCr Then
                Exit Do
            End If
        Loop
        Return New String(result.ToArray())
    End Function

End Module
