Wow! Such refactor! Many blocks! So NSDictionary!