have a finished working version!!!