import java.io.InputStream;
import java.io.IOException;
import java.util.NoSuchElementException;

public class Main {
    public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    }
}

class MyScanner {
    private final InputStream in = System.in;
    private final byte[] buffer = new byte[1024];
    private int pointer = 0;
    private int bufLength = 0;

    private boolean hasNextByte() {
        if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        }
        return true;
    }

    private int readByte() {
        if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        }
    }

    private static boolean isNumberChar(final int c) {
        return '0' <= c && c <= '9';
    }

    private static boolean isPrintableChar(final int c) {
        return 33 <= c && c <= 126;
    }

    public boolean hasNext() {
        while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        }
        return hasNextByte();
    }

    public String next() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final StringBuilder sb = new StringBuilder();
        int b = readByte();
        while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    }

    public long nextLong() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        long num = 0;
        boolean isNegative = false;
        int b = readByte();
        if (b == '-') {
            isNegative = true;
            b = readByte();
        }
        if (!isNumberChar(b)) {
            throw new NumberFormatException();
        }
        while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        }
    }

    public int nextInt() {
        final long temp = nextLong();
        if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        }
        return (int) temp;
    }

    public double nextDouble() {
        return Double.parseDouble(next());
    }
} import java.io.InputStream; InputStream java.io import java.io.IOException; IOException java.io import java.util.NoSuchElementException; NoSuchElementException java.util public class Main {
    public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    }
} Main public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    } main {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    } final MyScanner sc = new MyScanner(); sc new MyScanner() final String s = sc.next(); s sc.next() sc.next sc final String t = sc.next(); t sc.next() sc.next sc if (s.equals(t)) {
            System.out.println(0);
            return;
        } s.equals(t) s.equals s t {
            System.out.println(0);
            return;
        } System.out.println(0) System.out.println System.out System System.out 0 return; final char[] sArray = s.toCharArray(); sArray s.toCharArray() s.toCharArray s final char[] tArray = t.toCharArray(); tArray t.toCharArray() t.toCharArray t int counter = 0; counter 0 for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        } int i = 0; int i = 0; i 0 i < sArray.length i sArray.length sArray sArray.length i++ i++ i {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        } {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        } if (sArray[i] != tArray[i]) {
                counter++;
            } sArray[i] != tArray[i] sArray[i] sArray i tArray[i] tArray i {
                counter++;
            } counter++ counter System.out.println(counter) System.out.println System.out System System.out counter String[] args args class MyScanner {
    private final InputStream in = System.in;
    private final byte[] buffer = new byte[1024];
    private int pointer = 0;
    private int bufLength = 0;

    private boolean hasNextByte() {
        if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        }
        return true;
    }

    private int readByte() {
        if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        }
    }

    private static boolean isNumberChar(final int c) {
        return '0' <= c && c <= '9';
    }

    private static boolean isPrintableChar(final int c) {
        return 33 <= c && c <= 126;
    }

    public boolean hasNext() {
        while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        }
        return hasNextByte();
    }

    public String next() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final StringBuilder sb = new StringBuilder();
        int b = readByte();
        while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    }

    public long nextLong() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        long num = 0;
        boolean isNegative = false;
        int b = readByte();
        if (b == '-') {
            isNegative = true;
            b = readByte();
        }
        if (!isNumberChar(b)) {
            throw new NumberFormatException();
        }
        while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        }
    }

    public int nextInt() {
        final long temp = nextLong();
        if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        }
        return (int) temp;
    }

    public double nextDouble() {
        return Double.parseDouble(next());
    }
} MyScanner private final InputStream in = System.in; in System.in System System.in private final byte[] buffer = new byte[1024]; buffer new byte[1024] 1024 private int pointer = 0; pointer 0 private int bufLength = 0; bufLength 0 private boolean hasNextByte() {
        if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        }
        return true;
    } hasNextByte {
        if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        }
        return true;
    } if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        } pointer < bufLength pointer bufLength {
            return true;
        } return true; true {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        } pointer = 0 pointer 0 try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            } catch (final IOException e) {
                e.printStackTrace();
            } final IOException e {
                e.printStackTrace();
            } e.printStackTrace() e.printStackTrace e {
                bufLength = in.read(buffer);
            } bufLength = in.read(buffer) bufLength in.read(buffer) in.read in buffer if (bufLength <= 0) {
                return false;
            } bufLength <= 0 bufLength 0 {
                return false;
            } return false; false return true; true private int readByte() {
        if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        }
    } readByte {
        if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        }
    } if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        } hasNextByte() hasNextByte {
            return buffer[pointer++];
        } return buffer[pointer++]; buffer[pointer++] buffer pointer++ pointer {
            return -1;
        } return -1; -1 1 private static boolean isNumberChar(final int c) {
        return '0' <= c && c <= '9';
    } isNumberChar {
        return '0' <= c && c <= '9';
    } return '0' <= c && c <= '9'; '0' <= c && c <= '9' '0' <= c '0' c c <= '9' c '9' final int c c private static boolean isPrintableChar(final int c) {
        return 33 <= c && c <= 126;
    } isPrintableChar {
        return 33 <= c && c <= 126;
    } return 33 <= c && c <= 126; 33 <= c && c <= 126 33 <= c 33 c c <= 126 c 126 final int c c public boolean hasNext() {
        while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        }
        return hasNextByte();
    } hasNext {
        while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        }
        return hasNextByte();
    } while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        } hasNextByte() && !isPrintableChar(buffer[pointer]) hasNextByte() hasNextByte !isPrintableChar(buffer[pointer]) isPrintableChar(buffer[pointer]) isPrintableChar buffer[pointer] buffer pointer {
            pointer++;
        } pointer++ pointer return hasNextByte(); hasNextByte() hasNextByte public String next() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final StringBuilder sb = new StringBuilder();
        int b = readByte();
        while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    } next {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final StringBuilder sb = new StringBuilder();
        int b = readByte();
        while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    } if (!hasNext()) {
            throw new NoSuchElementException();
        } !hasNext() hasNext() hasNext {
            throw new NoSuchElementException();
        } throw new NoSuchElementException(); new NoSuchElementException() final StringBuilder sb = new StringBuilder(); sb new StringBuilder() int b = readByte(); b readByte() readByte while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        } isPrintableChar(b) isPrintableChar b {
            sb.appendCodePoint(b);
            b = readByte();
        } sb.appendCodePoint(b) sb.appendCodePoint sb b b = readByte() b readByte() readByte return sb.toString(); sb.toString() sb.toString sb public long nextLong() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        long num = 0;
        boolean isNegative = false;
        int b = readByte();
        if (b == '-') {
            isNegative = true;
            b = readByte();
        }
        if (!isNumberChar(b)) {
            throw new NumberFormatException();
        }
        while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        }
    } nextLong {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        long num = 0;
        boolean isNegative = false;
        int b = readByte();
        if (b == '-') {
            isNegative = true;
            b = readByte();
        }
        if (!isNumberChar(b)) {
            throw new NumberFormatException();
        }
        while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        }
    } if (!hasNext()) {
            throw new NoSuchElementException();
        } !hasNext() hasNext() hasNext {
            throw new NoSuchElementException();
        } throw new NoSuchElementException(); new NoSuchElementException() long num = 0; num 0 boolean isNegative = false; isNegative false int b = readByte(); b readByte() readByte if (b == '-') {
            isNegative = true;
            b = readByte();
        } b == '-' b '-' {
            isNegative = true;
            b = readByte();
        } isNegative = true isNegative true b = readByte() b readByte() readByte if (!isNumberChar(b)) {
            throw new NumberFormatException();
        } !isNumberChar(b) isNumberChar(b) isNumberChar b {
            throw new NumberFormatException();
        } throw new NumberFormatException(); new NumberFormatException() while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        } true {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        } if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            } isNumberChar(b) isNumberChar b {
                num *= 10;
                num += b - '0';
            } num *= 10 num 10 num += b - '0' num b - '0' b '0' if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            } b == -1 || !isPrintableChar(b) b == -1 b -1 1 !isPrintableChar(b) isPrintableChar(b) isPrintableChar b {
                return isNegative ? -num : num;
            } return isNegative ? -num : num; isNegative ? -num : num isNegative -num num num {
                throw new NumberFormatException();
            } throw new NumberFormatException(); new NumberFormatException() b = readByte() b readByte() readByte public int nextInt() {
        final long temp = nextLong();
        if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        }
        return (int) temp;
    } nextInt {
        final long temp = nextLong();
        if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        }
        return (int) temp;
    } final long temp = nextLong(); temp nextLong() nextLong if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        } temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp temp < Integer.MIN_VALUE temp Integer.MIN_VALUE Integer Integer.MIN_VALUE Integer.MAX_VALUE < temp Integer.MAX_VALUE Integer Integer.MAX_VALUE temp {
            throw new NumberFormatException();
        } throw new NumberFormatException(); new NumberFormatException() return (int) temp; (int) temp public double nextDouble() {
        return Double.parseDouble(next());
    } nextDouble {
        return Double.parseDouble(next());
    } return Double.parseDouble(next()); Double.parseDouble(next()) Double.parseDouble Double next() next public class Main {
    public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    }
} public class Main {
    public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    }
} Main
import java.io.InputStream;
import java.io.IOException;
import java.util.NoSuchElementException;

public class Main {
    public static void main(String[] args) {
        final MyScanner sc = new MyScanner();
        final String s = sc.next();
        final String t = sc.next();

        if (s.equals(t)) {
            System.out.println(0);
            return;
        }

        final char[] sArray = s.toCharArray();
        final char[] tArray = t.toCharArray();

        int counter = 0;
        for (int i = 0; i < sArray.length; i++) {
            if (sArray[i] != tArray[i]) {
                counter++;
            }
        }

        System.out.println(counter);
    }
}

class MyScanner {
    private final InputStream in = System.in;
    private final byte[] buffer = new byte[1024];
    private int pointer = 0;
    private int bufLength = 0;

    private boolean hasNextByte() {
        if (pointer < bufLength) {
            return true;
        } else {
            pointer = 0;
            try {
                bufLength = in.read(buffer);
            } catch (final IOException e) {
                e.printStackTrace();
            }
            if (bufLength <= 0) {
                return false;
            }
        }
        return true;
    }

    private int readByte() {
        if (hasNextByte()) {
            return buffer[pointer++];
        } else {
            return -1;
        }
    }

    private static boolean isNumberChar(final int c) {
        return '0' <= c && c <= '9';
    }

    private static boolean isPrintableChar(final int c) {
        return 33 <= c && c <= 126;
    }

    public boolean hasNext() {
        while (hasNextByte() && !isPrintableChar(buffer[pointer])) {
            pointer++;
        }
        return hasNextByte();
    }

    public String next() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        final StringBuilder sb = new StringBuilder();
        int b = readByte();
        while (isPrintableChar(b)) {
            sb.appendCodePoint(b);
            b = readByte();
        }
        return sb.toString();
    }

    public long nextLong() {
        if (!hasNext()) {
            throw new NoSuchElementException();
        }
        long num = 0;
        boolean isNegative = false;
        int b = readByte();
        if (b == '-') {
            isNegative = true;
            b = readByte();
        }
        if (!isNumberChar(b)) {
            throw new NumberFormatException();
        }
        while (true) {
            if (isNumberChar(b)) {
                num *= 10;
                num += b - '0';
            } else if (b == -1 || !isPrintableChar(b)) {
                return isNegative ? -num : num;
            } else {
                throw new NumberFormatException();
            }
            b = readByte();
        }
    }

    public int nextInt() {
        final long temp = nextLong();
        if (temp < Integer.MIN_VALUE || Integer.MAX_VALUE < temp) {
            throw new NumberFormatException();
        }
        return (int) temp;
    }

    public double nextDouble() {
        return Double.parseDouble(next());
    }
}
