Logic is fully functional - need visual layer