code: def select(self, query: ast.Select) -> pd.DataFrame:
      self.handler.connect()
  
      if query.limit is not None:
          raise NotImplementedError(
              "Limit is not supported for user info table"
          )
  
      user_info = self.handler.api.get_current_user()
  
      # Normalize email field
      if "emails" in user_info and isinstance(
          user_info["emails"], list
      ):
          user_info["email"] = (
              user_info["emails"][0]["email"]
              if user_info["emails"]
              else None
          )
          user_info["email_verified"] = (
              user_info["emails"][0]["verified"]
              if user_info["emails"]
              else None
          )
          user_info["email_primary"] = (
              user_info["emails"][0]["primary"]
              if user_info["emails"]
              else None
          )
          del user_info["emails"]
      else:
          user_info["email"] = None
          user_info["email_verified"] = None
          user_info["email_primary"] = None
  
      data = pd.DataFrame([user_info])
  
      # Select columns based on query
      columns = self.get_columns()
      selected_columns = [
          target.parts[-1]
          for target in query.targets
          if isinstance(target, ast.Identifier)
      ]
      if selected_columns:
          columns = [col for col in columns if col in selected_columns]
      data = data[columns]
  
      return data
  
imports: import pandas
  import collections
  from mindsdb.integrations.libs.api_handler import APITable
  from mindsdb_sql.parser import ast
  from mindsdb.integrations.utilities.sql_utils import extract_comparison_conditions
  from mindsdb.integrations.handlers.utilities.query_utilities import SELECTQueryParser, SELECTQueryExecutor
label_desc: Use image node_id 1 for calling the EventbriteUserTable obj's underlying member method code with example usage: obj.select(query) and returns: data