updated BASIC