package card import "errors" var ( ErrCardRequired = errors.New("card number is required") ErrCardLength = errors.New("card number must contain exactly 16 digits") ErrCardNumeric = errors.New("card number must contain only digits") ) func Validate(number string) error { if number == "" { return ErrCardRequired } if len(number) != 16 { return ErrCardLength } for _, char := range number { if char < '0' || char > '9' { return ErrCardNumeric } } return nil } func Mask(number string) string { if Validate(number) != nil { return "" } return number[:6] + "******" + number[12:] }