modified for param