Back at the office - I can post my "179" code, with comments added
 Code:
Function A($)
  Dim $D,$F,$I,$S			; Digit, Flag, ID, Sum
  $A=0					; default return
  $D=Len($)				; CC # length
  $I=Left($,1)	;			; CC Issuer ID
  If ($D=15&$I=3)|$D=16&$I>3&$I<7	; verify ID/# Digits
    While $				; while digits
      $D=(1+$F)*Right($,1)		; Get digit and optionally double
      $S=$S+IIf($D>9,$D-9,$D)		; sum digit
      $F=$F^1				; flip odd/even flag
      $=Left($,~)			; trim string
    Loop
  ; common code
    If $S Mod 10 = 0			; if CC is valid
      $A=$I				; return issuer code
EndFunction
Glenn
_________________________
Actually I am a Rocket Scientist! \:D