code: def init_datetime(self):
      if self.interval == self.INTERVAL_1min:
          self.start_datetime = max(
              self.start_datetime, self.DEFAULT_START_DATETIME_1MIN
          )
      elif self.interval == self.INTERVAL_1d:
          pass
      else:
          raise ValueError(f"interval error: {self.interval}")
  
      self.start_datetime = self.convert_datetime(
          self.start_datetime, self._timezone
      )
      self.end_datetime = self.convert_datetime(
          self.end_datetime, self._timezone
      )
  
imports: import abc
  import sys
  import datetime
  from abc import ABC
  from pathlib import Path
  import fire
  import pandas
  from loguru import logger
  from dateutil.tz import tzlocal
  from data_collector.base import BaseCollector, BaseNormalize, BaseRun
  from data_collector.utils import deco_retry
  from pycoingecko import CoinGeckoAPI
  from time import mktime
  from datetime import datetime
  import time
label_desc: Use image node_id 2 for calling the CryptoCollector obj's underlying member method code with example usage: obj.init_datetime() without return types