question: public static Map < Integer , Properties > collectProperties ( Properties properties ) { Map < Integer , Properties > ret = new HashMap < Integer , Properties > ( ) ; if ( properties != null ) { for ( String name : properties . stringPropertyNames ( ) ) { int index = getIndex ( name ) ; if ( index >= 0 ) { Properties props = ret . get ( index ) ; if ( props == null ) { props = new Properties ( ) ; ret . put ( index , props ) ; } String newName = dropToken ( name ) ; if ( newName . length ( ) > 0 ) { props . setProperty ( newName , properties . getProperty ( name ) ) ; } } } } return ret ; }
target:  Collects Properties by the leading index. This means that the name of the properties must start with an Integer or else they are dropped.