//It processes all queries related to retrieval of keys based on a certain metadata value
        public static void MetadataKeys(ref string DBType, ref List <string> ParameterSelected, ref List <string> ParameterValue, ref List <string> Results)
        {
            if (DBType == "Int-String")
            {
                string Param = ParameterSelected.First().Substring(8);
                String.Format("\n  Retrieving all keys in <int, string> database where " + Param + " = " + ParameterValue.First().ToString()).Wrap();
                List <int> R = IntKeyDB.FindKeysbyMetadata(Param, ParameterValue.First().ToString());
                if (R == null || R.Count == 0)
                {
                    Results.Add("No such key found");
                }
                else
                {
                    foreach (var item in R)
                    {
                        Results.Add(item.ToString());
                    }
                }
            }

            if (DBType == "String-List(String)")
            {
                string Param = ParameterSelected.First().Substring(8);
                String.Format("\n  Retrieving all keys in <string, List<string>> database where " + Param + " = " + ParameterValue.First().ToString()).Wrap();
                List <string> R = StringKeyDB.FindKeysbyMetadata(Param, ParameterValue.First().ToString());
                if (R == null || R.Count == 0)
                {
                    Results.Add("No such key found");
                }
                else
                {
                    foreach (var item in R)
                    {
                        Results.Add(item.ToString());
                    }
                }
            }
        }