created functionality for item generation