/*
 * This file is part of Bisq.
 *
 * Bisq is free software: you can redistribute it and/or modify it
 * under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or (at
 * your option) any later version.
 *
 * Bisq is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public
 * License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with Bisq. If not, see <http://www.gnu.org/licenses/>.
 */

package bisq.asset.coins;

import bisq.asset.Coin;
import bisq.asset.RegexAddressValidator;

public class Beam extends Coin {
    public Beam() {
        super("Beam", "BEAM", new RegexAddressValidator("^([0-9a-f]{64,65})$"));
    }
}

@@ -768,16 +768,621 @@
 dator;%0A%0A
+/**%0A * Here is info from a Beam developer regarding validation.%0A *%0A * Well, unfortunately the range length is quite large. The BbsChannel is 64 bit = 8 bytes, the pubkey is 32 bytes.%0A * So, the length may be up to 80 chars. The minimum length %22theoretically%22 can also drop to a small length, if the%0A * channel==0, and the pubkey starts with many zeroes  (very unlikely, but possible). So, besides being up to 80 chars%0A * lower-case hex there's not much can be tested. A more robust test would also check if the pubkey is indeed valid,%0A * but it's a more complex test, requiring cryptographic code.%0A *%0A */%0A
 public c
@@ -1498,13 +1498,12 @@
 -f%5D%7B
-64,65
+1,80
 %7D)$%22

Update validation regex and add comment