abstract handle