fix return types, add sealed edges together with a small test