class Iprog::Base

def self.call(*args, **kwargs)

def self.call(*args, **kwargs)
  if kwargs.any?
    new(**kwargs).call
  elsif args.length == 1 && args.first.is_a?(Hash)
    new(**args.first).call
  else
    raise ArgumentError, "❌ Expected keyword args or a single hash"
  end
end