Fingerprints: Analysis and Understanding