major update with examples