pragma solidity >=0.4.22 <0.6.0; import "./PittCoin.sol"; contract PittCoinStackOverflow is PittCoin { event NewQuestion(uint questionId, string title); struct User{ string pittUsername; uint amount; // uint accountNumber; } struct Question{ uint bounty; string qText; } struct Course { uint catalogNumber; //5 digit string courseTitle; // actual title string courseNumber; // CS 1699 uint semester; // 4 digit semester address instructor; //instructor PittCoin address } mapping(uint => address) public questionToAsker; mapping(address=> uint) userAnsweredCount; mapping(uint=> address) userToWallet; Question[] public questions; Course[] public courses; User[] public users; function _addUser(string memory _uName, uint _amount) internal{ uint id = users.push(User(_uName, _amount)) -1; userToWallet[id] = msg.sender; } function _generateRandomID(string memory _str) private view returns (uint){ uint rand = uint(keccak256(abi.encodePacked(_str))); return rand; } function _createQuestion(uint _amount, string memory _qText) internal { uint randID = _generateRandomID(_qText); uint id = questions.push(Question(_amount, _qText)) - 1; questionToAsker[id] = msg.sender; questions.push(Question(_amount, _qText)) - 1; questionToAsker[id] = msg.sender; emit NewQuestion(randID, _qText); } }