added more autonomous functionality