lab with optional steps