internal/stack/stack.go
func (s *Stack) Top() (interface{}, error) {
	if len(*s) == 0 {
		return nil, errors.New("nothing on stack")
	}
	return (*s)[len(*s)-1], nil
}
func (s *Stack) Top() (interface{}, error) {
	if len(*s) == 0 {
		return nil, errors.New("nothing on stack")
	}
	return (*s)[len(*s)-1], nil
}
// Top returns the element at the top of the stack or an error if stack is empty