fix basic functionality