experimental widget casting functionality