widget system added