1

I'm trying to write a simple R sequence clustering/grouping/simplification solution. I'm rather a beginner, haven't used R for a while, so please forgive simple and stupid questions/solutions. Tasks are taken from SAP and they represent execution of P2P process.

Overview:

Input: After some suggestions I think that the input data should cover words instead of their ids (we don't want to compare numbers but simplify word sequences)

Option 1: sequences of steps in SAP P2P, like:

Sequence 1:Purchase Order/NB > Goods Receipt/TA > Invoice Receipt/NA > Goods Receipt/TA 
Sequence 2:Purchase Order/NB > Goods Receipt/TA > Invoice Receipt/NA 

My data set contains around 700 sequences (test 100), they are both short (5 steps) and long (even more than 50).

Issue is that I don't (during results interpretation) want to compare all i.e. 700 sequences but somehow I want to distinguish similar ones. Often, especially for long sequences difference is spotted after i.e. 20 steps, example:

Seq1: PR > PO > GR > IR > GR > IR > GR > IR > Payment

Seq2: PR > PO > GR > IR > IR > GR > GR > IR > Payment

At the end it should lead to spotting inefficiencies in the process executions. My question is, do you have any suggestions how I can approach that king of issue? After reading your comments I don't think that the clustering approach is the right one. I don't really care whether we should use clusters or something else, what matters is the simplification of flows.

I will appreciate any hints, suggestions, etc.

Test Data (> is used as a separator).

text_data <- c("Invoice Posting (Logistics invoice) > Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/NB", "Purchase order/NB > Goods Receipt/WE", 
"Purchase order/NB > Goods Receipt/WE > Goods Return/WE", "Purchase order/NB > Goods Receipt/WE > Goods Return/WE > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Posting (Account maintenance) > Invoice Receipt (Account maintenance)/AE", 
"Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE", 
"Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /ZA", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice)", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /ZA", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Clearing /KZ > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /ZA", 
"Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/ZI > Invoice Posting (Logistics invoice) > Clearing /AB", 
"Purchase order/NB > Goods Return/WE", "Purchase order/NB > Goods Return/WE > Credit Note (Logistics invoice)/RE > Credit Note Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/NB > Goods Return/WE > Credit Note (Logistics invoice)/RE > Credit Note Posting (Logistics invoice) > Clearing /ZA", 
"Purchase order/NB > Goods Return/WE > Credit Note Posting (Account maintenance) > Credit Note (Account maintenance)/AE", 
"Purchase order/NB > Goods Return/WE > Credit Note Posting (Logistics invoice) > Credit Note (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /ZA", 
"Purchase order/NB > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Clearing /KZ", 
"Purchase order/UB", "Purchase order/UB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE", 
"Purchase order/ZB", "Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/IE > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Invoice Posting (Logistics invoice)", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Invoice Posting (Logistics invoice) > Clearing /ZA", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase order/ZR", "Purchase order/ZR > Goods Receipt/WE", 
"Purchase order/ZR > Goods Receipt/WE > Goods Return/WE", "Purchase order/ZR > Goods Receipt/WE > Goods Return/WE > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Posting (Account maintenance) > Invoice Receipt (Account maintenance)/AE", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Account maintenance)/AE > Invoice Posting (Account maintenance)", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice)", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB > Credit Note (Logistics invoice, cancel)/RE > Credit Note Posting (Logistics invoice, cancel) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB > Credit Note (Logistics invoice, cancel)/RE > Invoice Receipt (Logistics invoice)/RE > Credit Note Posting (Logistics invoice, cancel) > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB > Credit Note (Logistics invoice, cancel)/RE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Credit Note Posting (Logistics invoice, cancel) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Credit Note (Logistics invoice)/RE > Credit Note Posting (Logistics invoice)", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Credit Note (Logistics invoice)/RE > Credit Note Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE", 
"Purchase order/ZR > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase order/ZR > Invoice Receipt (Logistics invoice)/RE > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase order/ZR > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Clearing /KZ", 
"Purchase requisition/NB", "Purchase requisition/NB > PR release - MRP /  RFQ / purchase order", 
"Purchase requisition/NB > PR release - RFQ / purchase order", 
"Purchase requisition/NB > Purchase order/NB", "Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Account maintenance) > Invoice Receipt (Account maintenance)/AE", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /AB", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /ZA", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice)", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB > Credit Note (Logistics invoice, cancel)/RE > Invoice Receipt (Logistics invoice)/RE > Credit Note Posting (Logistics invoice, cancel) > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /AB > Credit Note (Logistics invoice, cancel)/RE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Credit Note Posting (Logistics invoice, cancel) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /ZA", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /ZA", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice)", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/RE > Invoice Posting (Logistics invoice) > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/ZI > Invoice Posting (Logistics invoice) > Clearing /AB", 
"Purchase requisition/NB > Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE", 
"Purchase requisition/NB > Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /AB", 
"Purchase requisition/NB > Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /KZ", 
"Purchase requisition/NB > Purchase order/NB > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/RE > Clearing /ZA", 
"Purchase requisition/NB > Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/IE", 
"Purchase requisition/NB > Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Goods Receipt/WE > Invoice Posting (Logistics invoice) > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase requisition/NB > Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE", 
"Purchase requisition/NB > Purchase order/ZB > Delivery (Stock Transfer) > Goods Issue for Stock Transfer > Invoice Posting (Logistics invoice) > Goods Receipt/WE > Invoice Receipt (Logistics invoice)/IE > Clearing /ZA", 
"Purchase requisition/RV")
user2433705
  • 141
  • 1
  • 10
  • First, how about some data to work with, `dput(head(data))` or something similar? Second, do tasks maintain order, i.e. does 001 always 002, if 001 is present? Third, dendrograms are always hard to visualize when the number of elements is large, you can make it slightly more readable by setting `cex=0.5` or smaller. – emilliman5 Jan 19 '17 at 14:43
  • @emilliman5 thanks for your input. To answer (1) why you suggest dput - I don't understand (but I'm a rookie). (2) Do task maintain order - no. They match task names, serve as ids. So i.e. 001 points at Purchase Order/NB, 002 at Purchase Order/NA etc. (3) Maybe some simillarity measure should be use to cluster sequences but not to visualize them? – user2433705 Jan 19 '17 at 15:02
  • `dput` will return your data in text format so that you can copy and paste it into your question, so that we can easily load it on our machines. – emilliman5 Jan 19 '17 at 15:06
  • for question 2, I missed a word (the most important one too for that matter). Do the tasks (whether names or ids) have a global order? For example, does task 001 always precede task 002, if 001 and 002 are in a given sequence? I would start by tweaking the `costs` parameters until you get what you are looking for. – emilliman5 Jan 19 '17 at 15:17
  • 1
    You haven't really described your actual problem, just your attempts so far. See [XY problem](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem) for tips. – A. Webb Jan 19 '17 at 15:42
  • @emilliman5 - they don't have a global order. Number of tasks depend on the SAP configuration. You may have only 20 distinct tasks but you also may end up with having 100 distinct tasks. That's why there is 3 char representation of each task like 001. I would prefer to use letters but this approach is quite limited if the number is bigger than lets say 26. – user2433705 Jan 19 '17 at 15:47
  • @A.Webb - thank you, my actual problem is that I need to simplify/group/cluster those sequences probably based on similarity measures. - That's how I see my main thing. More operation problem is that the current classification puts 90% of sequences into one big cluster which shouldn't happen. Thanks to http://stackoverflow.com/questions/34948606/hclust-with-cutree-how-to-plot-the-cutree-cluster-in-single-hclust I can split this big dendrogram into smaller pieces but it still doesn't solve the issue. – user2433705 Jan 19 '17 at 15:52
  • There are any number sequence metrics that can be defined. I sense that you don't really care about the textual similarity between individual task ids, for example. The levenshtein distance between the strings "001 002 003" and "001 002 111" is the same as between "001 002 003" and "006 007 008". Is that really what you want? – A. Webb Jan 19 '17 at 16:06
  • 1
    The levenshtein distance may be what you want if you treat each id as an individual character in the metric, but you may also really want something else. Can you describe what makes sequences similar for your purposes? – A. Webb Jan 19 '17 at 16:08
  • @A.Webb indeed I don't really care about which measure should be used. After you mentioned the fact that the similarity between "001 002 003" and "001 002 111" is the same made me think a bit that maybe I should use nbrs but words. I.e. Purchase Order/NB which is represented by 001 is similar to Purchase Order/NA which is represented by 002. Often there are patterns which by definition are put into different sequence but actually the difference is not significant, i.e. tasks nbr 20 and 21 are flipped so in the second sequence you have 21 20 instead of 20 21, etc. I need to group such cases. – user2433705 Jan 19 '17 at 16:26
  • Let us [continue this discussion in chat](http://chat.stackoverflow.com/rooms/133642/discussion-between-user2433705-and-a-webb). – user2433705 Jan 20 '17 at 12:41

0 Answers0