Lucene stores everything as a String, meaning that when we try to do numerical comparisons, things won't behave as expected. i.e. 12 < 2. We need to implement two way field bridges to pad the numbers with meaningless 0's so that numbers all have the same amount of digits. i.e. 00012 00002 would be stored in the indexes.