Wednesday, November 27, 2019

AI BI and IoT


Business is enabling the BI, AI & IoT to help the production lines to purchasing trends to consumer analysis. I am Ravindra Pande (ravindrapande@gmail.com  /  rrpande@indiatrainingservices.in) trying to extrapolate the possibilities in scientific way this is not Si-Fi but current situation and very near future situations. Like to have your suggestions and feedback as always. Imagine a smart future! A future where machines are not merely dumb devices but intelligent creations that can work in tandem with human beings. A future that looks remarkably like the robotic utopia in I, Robot (Well, except the homicidal robots!). This future is not merely an imagination but a natural consequence of the two most dynamic technologies of today.

Factories deploy AI to automate complex physical tasks requiring adaptability and agility. Marketers use AI to generate individualized recommendations to the automatic order fulfillment scenarios. The list is expanding really fast and open to all new ideas and error free efficient process. A host of services taken for granted today, from credit card fraud detection to email spam filters to predictive traffic alerts to personalized reminders, wouldn’t be possible without AI. One area where AI is used extensively is business intelligence. Enterprises leverage deep learning algorithms to spot behavioral patterns likely to lead to sales, use cues from IoT sensors for predictive maintenance and inventory optimization and do more. However, what businesses do now is just the tip of the iceberg of possibilities.

AI Enables Live Decision Making, with the proliferation of data, several businesses run the risk of data overload. The unprecedented growth of Big Data and the obsession to analyze such data can easily gag the core operations of the business. AI-powered business intelligence software enables enterprises to break down data into manageable insights, and make sense of Big Data.

AI also has the potential to change the dynamics of analytics. Conventional data analytics focused on descriptive analytics or analyzing data to report what happened. The present generation of AI-enabled analytics tools enable predictive analytics or using data to decipher future insights. This, however, is based on “best guesses” with behavioral and historical data used to guess probabilities.

Prescriptive analytics is all set to take over in the near future. AI-powered prescriptive analytics tools would scour through vast swathes of data and enable users to prescribe various possible actions and advise viable solutions. Prescriptive analytics not just predicts, but offers sound advice as well, and explains why things will happen the way it will or does.

The shift from reactive predictive analytics to proactive prescriptive analytics improves the potency and relevance of business decisions. Live, real-time insights enable enterprises to make the best use of their operational data, making decisions based on what’s currently happening rather than based on what happened in the past. Much of the recommendations can be automated as well, with the best course of action determined by the intelligent machine based on the available inputs.

AI Brings Voice and Facial Recognition to the Center stage : AI-powered voice-activated digital personal assistants have already enamored millennial in a big way.  The spurt in deep learning-powered applications such as speech recognition interfaces, its widespread adoption by businesses and the tremendous popularity of digital voice assistants such as Apple Siri, Amazon Alexa and Google Assistant are portents of things to come. Voice will replace the keyboard and touch interfaces as the default norm for individuals to engage with brands, cutting across industries.

Likewise, matured facial recognition technology is all set to make big strides from present levels, in the near future. AI-powered facial recognition technology may just make the highly irritating password obsolete.

AI Powers Hyper-Personalization : AI-based intelligence learns from experience, becoming better with each experience or transaction. With the next prescribed decision automatically better than the previous one, the stage where the AI model is highly matured and covers all eventualities isn’t far off.
It gets better. AI-powered systems of the future could automatically decipher the user and even the users’ emotions from the soon-to-be-commonplace voice commands, to make highly accurate recommendations or engage with them at a truly personal level. The next wave of AI-powered assistants will be capable of analyzing huge troves of data contextually, in real-time, to grasp customers’ need and priorities quickly, and do what’s required. AI is all set to make hyper-personalization the default norm, rather than a premium service as it is now.

At a macro level, enterprises would be able to collate information from various data points and make real-time live sentiment analysis. For example, an enterprise could collect live data from the customer’s engagement with the company, their social media posts and other data, to understand their thought process and emotional reaction about a product and make real-time interventions to either reinforce or change such perceptions.

AI is already helping industries such as financial services, healthcare, securities trading and life sciences in a big way. For instance, AI is taking over the role of the clinical assistant, helping physicians make faster and more reliable diagnoses. Such instances will become commonplace to the extent human intervention will become rare.

However, as of now, machines traditionally don’t do well when it comes to abstract tasks involving human capabilities such as empathy, creativity, judgment, inspiration and leadership. Two critical management functions, innovation and managing people, are still almost entirely with humans. This could change in the future thanks to AI systems becoming more mature. Presently, algorithms may suffer from some amount of bias or subjectivity, considering the algorithms are designed by humans after all. As training data gets more mature, such biases and negative effects will be quickly eradicated.

Artificial intelligence is here to stay. AI has the potential to transform how top executives make decisions, how marketers engage with customers, how enterprises compete with each other and how they develop overall to become more potent and powerful. The future of business intelligence will surely be driven by AI-enabled systems.

Well, Artificial Intelligence deals with the creation of systems that can learn to emulate human tasks using their prior experience and without any manual intervention. (Basically Intelligent Systems!). Internet of Things, on the other hand, is a network of various devices that are connected over the internet and they can collect and exchange data with each other enabling the AI in an exponential scale.

To understand this further, all these IoT devices generate a lot of data that needs to be collected and mined for actionable results. This is where Artificial Intelligence comes into the picture. Internet of Things is used to collect and handle the huge amount of data that is required by the Artificial Intelligence algorithms. In turn, these algorithms convert the data into useful actionable results that can be implemented by the IoT devices.

Without AI-powered analytics, IoT devices and the data they produce throughout the network would have limited value. Similarly, AI systems would struggle to be relevant in business settings without the IoT-generated data pouring in. However, the powerful combination of AI and IoT can transform industries and help them make more intelligent decisions from the explosive growth of data every day. IoT is like the body, and AI the brains, which together can create new value propositions, business models, revenue streams and services

The Power for IoT : The number of sensors in the Internet of Things (IoT) will grow like never seen before we’re talking of billions to trillions of sensors. As most of them will be connected wirelessly, we need to rethink the technologies for how to power the sensors.

Batteries are part of our mobile lives. We find them in each portable device and in millions of remote controls for smart home and building automation. With trillions of wireless IoT sensors, the demand for batteries will increase into infinity. However, infinity is no option for a battery-powered IoT.

Limits of Lithium: For the 10 trillion wireless sensors delivering the needed data for IoT, they would require one million tons of lithium – the combined worldwide lithium production in 10 years. And, we even need much more for our smartphones, electrical cars, local energy storage systems, etc. Consequently, there’s not enough lithium in the world for all of these applications.

Additionally, the environmental impact of lithium mining results in water shortage, air pollution and destruction of nature reserves. No recycling technology exists today that is capable of producing enough pure lithium for a second use in batteries.*

Lithium is just one element batteries contain. There are also toxic heavy metals such as mercury, lead, cadmium and nickel in batteries, which are detrimental to the environment. At the end of their lifetime, they need to be disposed of carefully and expensively. Recycling isn’t always an option and is polluting as well. Reports reveal that it takes 6 to 10 times more energy to reclaim metals from some recycled batteries than from mining.

Challenges of Changing : Besides the environmental impact of battery production, disposal and recycling, there are further costs that we need to consider as batteries need maintenance.

Wireless connectivity supports devices to be flexibly installed or mobile and their location needs to be documented and updated as their location changes. In a large building system, hundreds of sensors are distributed over several floors and offices. Often, the devices are mounted unobtrusively in places that are difficult to reach, e.g. on or above drop ceilings. Depending on the battery technology in use, a user will dispose of between 200 and 1,600 batteries over 20 years in a residential home with only 50 nodes.

In addition, each device has a different battery access method and requires different types of batteries. This results in extra work, making the battery replacement a challenging and time-consuming effort. Usually, batteries don’t run out of energy at the same time. So, the technician might just have left the facility after changing some batteries when the next battery dies. Well, call the technician again.

Benefits of Battery less: Considering the costs of batteries, IoT, with its trillions of sensor nodes, needs a more eco-balanced and maintenance-free alternative to power mobile devices. This alternative exists today and is already deployed in building automation and smart home systems or in outdoor environmental monitoring systems: energy harvesting wireless sensors.

Like we switch our power production to the use of renewable energy sources, such as sun, wind, water, etc., self-powered sensors use the same principles of harvesting energy from the surrounding environment at a micro-level. Miniaturized energy converters use kinetic motion, light or temperature differences to power wireless sensing and data communication. There’s no need for a battery change and disposal and no need for time-consuming maintenance. Simply install and forget.

It’s a simple calculation and our ecological responsibility to realize a self-powered Internet of Things. Energy harvesting wireless sensors are the only way to avoid tons of battery waste and to ensure reliable and maintenance-free system functionality.  Artificial Intelligence and the Internet of Things is like a match made in Tech Heaven.

While both of these disciplines have individual value, their true potential can only be realized together. There are many different applications across multiple industries that require Artificial Intelligence and Internet of Things.

Connected Robots: Ever wanted the help of a robot? Well, that’s exactly what you will get with Collaborative Robots or Cobots. These Cobots are highly complex machines that are designed to help humans in a shared workspace with environments ranging from office to industrial. They can be a robot arm designed to perform tasks or even a complex robot designed to fulfill tough tasks without least manual interventions.

All favorite Drones: Drones are aircraft without a human pilot (The piloting is done by the software!). They are extremely useful as they can navigate unknown surroundings (even those beyond the reach of the internet) and reach areas hazardous for humans such as offshore operations, mines, war zones or burning buildings.

Smart Cities: When everything is getting smart, why not whole cities? Smart cities can be created with a network of sensors that are attached to the physical city infrastructure. These sensors can be used to monitor the city for various civic factors such as energy efficiency, air pollution, water use, noise pollution, traffic conditions, etc. In India specifically the great innovative vision of Hon Prime Minister Mr. Nerandra Modi enabled a great project with in Indian country to enable smart administration of cities.

Smart Retailing: This is shopping made smart! AI and IoT can be used by retailers to understand the customer behavior (by studying the consumer online profile, in-store inventory, etc.) and then send real-time personalized offers while the customer is in the store. While Artificial Intelligence in the Internet of Things is a relatively new concept, it has already been successfully applied in many real-world applications. (Yeah, this world is more tech-savvy than we thought!) Some of these applications are given as follows:

Self Driving Cars: Sound like futuristic science-fiction yet they are very much a part of today’s reality. The Tesla Motors self-driving cars use the latest advancements in Artificial Intelligence and the Internet of Things. While these cars are still in the testing phase (With multiple legal and ethical concerns as baggage!) they are still one of the easier innovations of IoT. A unique feature of the Tesla self-driving cars is that all of them act like a connected network. Whenever one car learns some new information, which is passed on to all the other cars. And that is used to predict the behavior of cars and pedestrians on the road in various circumstances.

Endangered Species Preservation: There are many animals that are endangered or going extinct in various countries (No thanks to human of course!). Also, the traditional methods of tracking these animals with collars are stressful and dangerous (Both to the animals and researchers). So WildTrack’s footprint identification technique (FIT) uses IoT and AI algorithms to identify the species, individual, age and gender of an animal from its unique footprint. Then this data can be used to recognize patterns relating to animal movements, species population, etc. that help in preserving various endangered species.

Smart thermostat : Everything is becoming smart these days, this device uses IoT to allow temperature checking and controls from anywhere using smartphone integration. It is also quite simple to use, which is one of the primary reasons for its success (apart from AI and IoT of course!).  Artificial Intelligence plays a big role in the Nest Labs thermostat. It is used to understand the temperature preferences of the users and also their daily schedule. Then it adapts accordingly for optimal temperature and also maximum energy savings.

Automated vacuum cleaner – iRobot Roomba: When everything else is becoming smart, why not a smart vacuum cleaner? The iRobot Roomba is developed by three members of MIT’s Artificial Intelligence Lab and it uses IoT and AI to clean a room as efficiently as possible. It is a robotic vacuum cleaner that uses a set of sensors to detect obstacles, dirty spots on the floor or even steep drops such as stairs.
So, it essentially remembers the layout of the living space (As much as machines can anyway!) and then uses the most efficient and economical movements for cleaning. A smartphone app can be used to adjust the performance requirements with “Clean” mode, “Spot” mode, “Dock” mode, etc.

Conclusion: This is an exciting new time to live in (both for humans and machines!). With multiple advances in artificial intelligence, light-speed communications, and analytics, IoT is even more convenient and high-performance IoT devices are taking over almost every domain of technology. Moreover, the declining hardware costs make it feasible to embed sensors and connectivity in just about any device imaginable. Taken together, Artificial Intelligence and Internet of Things are ushering in a new era where “smart” is just the normal state of being and the robotic utopia in the future appears more and more attainable in the present.

Sunday, August 25, 2019

ChatBot First

I was working on this blog for some weeks now. This is the most interesting topic or happening hot cake in programming on the event horizon. 

Necessity for today’s business to use chatbots

Due to successful chatbot experience of last few years, small business owners are now using AI technologies to improve their daily operations, interact with customers and increase income.
Lets not bagged down by these technology jargon just start with simple smile and open for learning a few things.   Integration and union of apps from different areas with the help of bots allow companies to introduce their software to a new level. Prosperous experience of Slack, Telegram, Messenger, etc. shows us that AI-based bots will remain in demand even further. Nevertheless, not everything is so smooth, and certain aspects of their use still slow introduction of chatbots into today’s business.
Current Forecasts

In relation to AI future in general and chatbots perspectives in particular, the results of the studies diverge. For instance, according to the Oracle research, 80 percent of surveyed said they are going to implement chatbots for customers support during the next years. At the same time, Forrester published completely different results for AI adoption among interviewed companies: only about 20 percent of them are ready to use AI in general, not just chatbots, for business needs in the coming years. Peak of blind popularity and inflated expectations seems to be left behind, as well as existing obstacles and shortcomings have already arisen in front of developers. And now it’s good time for rise of enlightenment, constructive solutions and productive work.

Advantages and Prospects

The reasons for the increased interest to chatbots are quite obvious. Customer expectations are increasing every day, and along with appearance of new technologies they expect more up-to-date customer service which includes fast and reliable payment operations, rapid processing of orders, easy shopping experience, personal approach to each client and much more. And chatbots can provide this. Here’re only some of their capabilities:

    Chatbots allow to resolve problems more quickly. Working 24/7, they not only let the company save money on round the clock support, but also are always ready to answer customer questions or perform another necessary task. With these many integrations, customers don’t need to wait in line, chatbots are always available to them from anywhere and anytime. According to the Business Insider Intelligence research, use of chatbots for customer service can reduce up to 30% of the company’s costs for communication with customers. In the project management process chatbots can be used to reduce the number of distracting conversations, answers to endless questions, discussions with colleagues, while allowing all members of the team to always keep abreast of developments.
    Chatbots provide personal approach to every customer. The fact is that many employees are not attentive enough to each individual client due to the general load and tiredness, lack of important information and knowledge, or irresponsibility. Chatbots have no such problems. Moreover, they allow to attract clients in a more personalized way. Artificial intelligence and machine learning can be used to generate a complete portrait of the customer, explore his habits and needs, gather purchasing history, form personalized experiences to improve the quality of customer service. If customers have a positive interaction with a company, they are more likely to return. No matter how cool your goods or services are, clients primarily care about how well you treat them. What about project management, chatbots can use collected information about users to automate a lot of tasks related to estimating and tracking time spent on tasks, provide interested project data according to the developer’s current activity and so on.
    Chatbots are also very convenient to use. Due to global integration, they can be always available in any desired application. Chatbots let customers save time and get required help without distracting from their smartphones. For example, if we say about project management tool like Riter, developers can use Slack or Telegram chatbots to create and assign tasks just during their discussion with team members without need to open the Riter application itself.
    Chatbots are easy to create and run. As a rule, you can use provided API to create your own chatbots on a necessary platform or just find somebody who can do this for you. For example, Riter has GraphQL API for integration with existing services. This year we are going to release a platform for writing bots and create the first set of bots for integration with the most popular third-party resources. Riter bot system will be able to provide not less opportunities than Jira plugins do, furthermore, our bots may be written in any language and placed on either our servers or on the client side. Later we plan to open a store of bots, where everyone will be able to add their own bots and get interest from their work. In addition, Riter users will get an ability to create private bots for their personal usage.

The chatbot landscape is changing fast, and all business owners need to keep upwiht it.  Facebook’s recent move to bring augmented reality to chatbots is just the latest adaptation, as this young technology tries to keep up with the blistering pace of communications. Having already tried communicating with emoji and by sharing images, what next for chatbots and what should yours focus on?

Ferris Bueller’s final line, “Life moves pretty fast. If you don’t stop and look around once in a while, you could miss it.” is very apt for technology. The trouble is, companies are so focused on adding new features to keep the headlines rolling, the road map on track and to generate interest that they rarely stop to ask, is this in the end-user or consumer interest?

Addition of Augmented Reality gives a great additional push.  So, we have the latest news from Facebook, from its F8 conference With the embattled company trying to push further into our lives with dating services and other efforts. Trying to bolt another tech poster-child, augmented reality (AR) into Facebook Messenger Chatbots is an exciting, if pushy move.

As ever, a few brands get to play guinea pig with the technology, but soon any brand could be pushing visual augmented messaging. That would be interesting for location-based work (“we’re here” with flashing arrows, or replacing complicated instructions with visual cues!) But, for most chatbots it doesn’t feel like something to get excited about.

In the not too distant future, AR will be relevant in many applications, especially as we move away from smartphones into glasses, micro-headsets, or whatever comes next to help us interact with technology and services. That’s when things may get interesting.

Instead, we’ll probably get mixes of AR’s traditional uses, such as funny faces, overlaying of logos on your world and so on to make a chat more lively. That will appeal to brands with big logos to splash around, perhaps even simple games to play.

Kia as one of the early adopters plans to let its Kian chatbot show users around the new Stinger 2018 model. But that’s something car brand apps have been doing for some time, so its not really new or innovative, just moving a feature from one platform to another.

Still, there’s plenty of news involving AR, almost enough to match chatbots when it comes to vendor and ecosystem excitement. At least some of those features should make bots more interesting to interact with. But the Messenger service already has some eight billion chats across it each month, is there really time to be stopping and staring at AR imagery?

In the few short years of their existence, chatbots have already moved from plain text to buttons, then added image recognition and further interactions, but none of them have threatened to replace text as the key feature.

For most bots, certainly for the next year, there is little need to go overboard on adding AR imagery to a chat. Instead most bot providers like SnatchBot offer what is still exciting and media-friendly services, with photos, video and other elements easy to integrate into any conversation for the best experiences.
When it comes to existing chatbots, what we may see happen is features like AR used to speed up a process that takes time if done by text, so images might augment a series of instructions. For retail brands, the visual impact of a product popping up in a chat might help drive some impulse purchases. Imagine walking past a burger bar and getting a location-based chat pop-up offering you their latest meal and cool drink on a hot day.

These and other ideas will all slowly trickle down into chatbots, and in a few years we may wonder why we ever bothered with text. But for now it remains the dominant force in bots and is all most companies will need to keep their customers engaged.

“Let’s build a Chatbot!” , I am trying to put in a programmers language lets see how successful I am. Chatbots are cool. They are driving the industry like hardly any other topic these days and are considered to be real game changers.

Therefore it’s pretty easy to convince customers to implement a digital assistant. But, it becomes tricky when we’re talking about costs. To give serious numbers, customers have to do their homework first.

Lets collect some data to get started,  first of all, we should investigate all your contact channels looking for the real pain points. Topics to consider are…

    Where are most of the requests coming in?
    Which requests are coming again and again?
    Which of those can be answered using standardized replies?
    And especially, which requests need most resources in your contact center?

In nine out of ten cases our advise is to start with a FAQ bot. The focus is on pain points and cost drivers identified within your contact channels.

So that’s the first milestone: Build a FAQ Chatbot

You shouldn’t necessarily compare a FAQ bot with those often pretty boring Frequently Asked Questions sections on websites. More than that, a FAQ Chatbot could…

    lead customers in a smart dialog to the desired information
    directly link customers to a contact form or similar on your website
    or ask for all the parameters needed according to the users intent and create and assign tickets in your system

How to integrate with Backend Systems?

The next milestone is usually to integrate your Chatbot with your Backend Systems. Technically, that’s usually not a big deal.

Questions to ask are…

  •     what are the most common Use Cases?
  •     which value can be added by standardized replies?
  •     does your Back-end System expose an open interface?

After identifying your Use Cases, you should (especially in Europe) consider GDPR topics. In addition, you usually need some kind of authentication method if your chatbot is dealing with customer related data. It’s always a good idea to include your legal department in this questions.
What should the technical implementation look like?

Now things are getting pretty easy ;). If you can answer all the things above, we can make a reliable recommendation according the technical implementation.

This recommendation will cover…

  •     Input and Output methods used
  •     The Design of the User Interface
  •     The desired User Experience
  •     Training and Testing of your Chatbot
  •     Development technologies and the Toolstack used

Now lets wait for my next blog for actual Chat Bot programming tutorial. Feel free to reach me at ravindrapande@gmail.com for any queries & suggestions.

Building the Bot

Pre-requisites

Hands-On knowledge of scikit library and NLTK is assumed. However, if you are new to NLP, you can still read the article and then refer back to resources.
NLP

The field of study that focuses on the interactions between human language and computers is called Natural Language Processing, or NLP for short. It sits at the intersection of computer science, artificial intelligence, and computational linguistics[Wikipedia].NLP is a way for computers to analyze, understand, and derive meaning from human language in a smart and useful way. By utilizing NLP, developers can organize and structure knowledge to perform tasks such as automatic summarization, translation, named entity recognition, relationship extraction, sentiment analysis, speech recognition, and topic segmentation.
NLTK: A Brief Intro

NLTK(Natural Language Toolkit) is a leading platform for building Python programs to work with human language data. It provides easy-to-use interfaces to over 50 corpora and lexical resources such as WordNet, along with a suite of text processing libraries for classification, tokenization, stemming, tagging, parsing, and semantic reasoning, wrappers for industrial-strength NLP libraries.

NLTK has been called “a wonderful tool for teaching and working in, computational linguistics using Python,” and “an amazing library to play with natural language.”

Natural Language Processing with Python provides a practical introduction to programming for language processing. I highly recommend this book to people beginning in NLP with Python.

Downloading and installing NLTK

    Install NLTK: run pip install nltk
    Test installation: run python then type import nltk

For platform-specific instructions, read here.
Installing NLTK Packages

import NLTK and run nltk.download().This will open the NLTK downloader from where you can choose the corpora and models to download. You can also download all packages at once.
Text Pre- Processing with NLTK

The main issue with text data is that it is all in text format (strings). However, Machine learning algorithms need some sort of numerical feature vector in order to perform the task. So before we start with any NLP project we need to pre-process it to make it ideal for work. Basic text pre-processing includes:

    Converting the entire text into uppercase or lowercase, so that the algorithm does not treat the same words in different cases as different
    Tokenization: Tokenization is just the term used to describe the process of converting the normal text strings into a list of tokens i.e words that we actually want. Sentence tokenizer can be used to find the list of sentences and Word tokenizer can be used to find the list of words in strings.

The NLTK data package includes a pre-trained Punkt tokenizer for English.

    Removing Noise i.e everything that isn’t in a standard number or letter.
    Removing Stop words. Sometimes, some extremely common words which would appear to be of little value in helping select documents matching a user need are excluded from the vocabulary entirely. These words are called stop words
    Stemming: Stemming is the process of reducing inflected (or sometimes derived) words to their stem, base or root form — generally a written word form. Example if we were to stem the following words: “Stems”, “Stemming”, “Stemmed”, “and Stemtization”, the result would be a single word “stem”.
    Lemmatization: A slight variant of stemming is lemmatization. The major difference between these is, that, stemming can often create non-existent words, whereas lemmas are actual words. So, your root stem, meaning the word you end up with, is not something you can just look up in a dictionary, but you can look up a lemma. Examples of Lemmatization are that “run” is a base form for words like “running” or “ran” or that the word “better” and “good” are in the same lemma so they are considered the same.

Bag of Words

After the initial preprocessing phase, we need to transform the text into a meaningful vector (or array) of numbers. The bag-of-words is a representation of text that describes the occurrence of words within a document. It involves two things:
 •A vocabulary of known words.
•A measure of the presence of known words.

Why is it is called a “bag” of words? That is because any information about the order or structure of words in the document is discarded and the model is only concerned with whether the known words occur in the document, not where they occur in the document.

The intuition behind the Bag of Words is that documents are similar if they have similar content. Also, we can learn something about the meaning of the document from its content alone.

For example, if our dictionary contains the words {Learning, is, the, not, great}, and we want to vectorize the text “Learning is great”, we would have the following vector: (1, 1, 0, 0, 1).

And that’s the point, where we can seriously talk about numbers, now lets take a breath and revisit what have we learned till this point.

Now lets wait for my next belog for actual ChatBot programming tutorial. Feel free to reach me at ravindrapande@gmail.com for any queries & suggestions.