January 2024 Coding Challenge **Backstory** In the NEAR Protocol universe, a flourishing digital economy has led to an explosion of digital assets, including various cryptocurrencies and tokens. Amidst this growth, a shadow looms over the ecosystem: the proliferation of scam coins. These are tokens that are often airdropped into user wallets without consent, often bearing enticing names like "Instant Winner" or "Claim Your Prize at scam.com." Their purpose is to mislead or defraud users. **Problem** Many users are finding their wallets cluttered with these scam coins. These tokens not only cause confusion but also pose a security risk, as interacting with them can lead to phishing attacks or other scams. Moreover, these tokens utilize storage space in the users' wallets, which in the NEAR Protocol, is a limited resource that users essentially rent. **Opportunity** A feature of the NEAR Protocol is that for a token to appear in a user's wallet, the user's account must be registered with the token's smart contract. This registration process reserves storage space for the token in the user's wallet. (Hint) This also means that users have the ability to unregister from these tokens, reclaiming their storage space and potentially even receiving a refund for the storage rental. **note: there are security considerations that you don't need to manage for this, the goal is to learn some of NEAR's tech** **Outline for the Coding Challenge** *Overview* Develop a utility for NEAR Protocol wallet users that identifies scam coins in their wallet, enables them to unregister from these coins' contracts, and reclaim their storage space. **Key Features** *Scam Coin Identification:* The utility will maintain a list of known scam coins, identified by their contract names. Users can view this list within the utility. *Wallet Scanning:* The utility scans the user's wallet to identify any scam coins present. It cross-references the wallet's tokens against the list of known scam coins. *Unregister and Reclaim Storage:* For identified scam coins, the utility provides an option to call on their contracts. This operation unregisters the user from the scam coin's contract and reclaims the storage space. **Nice to have** *Community-Driven Blacklist:* Users can submit new scam coins to be added to the blacklist. A voting system allows the community to validate these submissions, reducing the risk of false positives. *User Interface:* A simple and intuitive interface for listing scam coins, scanning the wallet, and performing the unregister operation on BOS. Clear instructions and warnings about the implications of unregistering from a token's contract. **Rules:** The code should be tested and deployed on the NEAR testnet or mainnet. Due 11:59 UTC Jan 31st Submissions sent into https://form.jotform.com/240095676821158 Need a little help or have questions? Check out our office hours on Thursdays 11am & 6pm UTC or through chat in discord https://discord.gg/Ee4axDASaW or telegram https://t.me/neardev