import java.util.Arrays;
import java.util.Scanner;
class Main {
public int[] solution(String sentence, String target) {
int point = 101;
char t = target.charAt(0);
int[] distance = new int[sentence.length()];
//왼 -> 오
for (int i = 0;i < distance.length; i++){
if(sentence.charAt(i) == t){ // target 과 sentence가 같다면
point = 0; // target부터 거리는 0
distance[i] = point; // 0을 넣어주고
}else {
distance[i] = point; // 다르다면 임의의 점으로부터 점의 거리를 넣어준다.
}
point++;//오른쪽으로 한칸 이동했음으로 +1
}
//오른쪽으로 임의의 점의 거리 문자열의 최대길이가 100임으로 101으로 잡음
point = 101;
//오->왼
for(int j=distance.length-1;j >=0;j--){
if(sentence.charAt(j) == t){
point = 0;
distance[j] = point;
}else { // 왼쪽으로 올때는 원래있던 distance배열 안에있던 거리정보보다 짧은때만 넣어줘야 최소거리가 된다.
if(distance[j] > point){
distance[j] = point;
}
}
point++;
}
return distance;
}
public static void main(String[] args){
Main T = new Main();
Scanner scanner = new Scanner(System.in);
String s = scanner.next();
String t = scanner.next();
for(int x : T.solution(s, t)){
System.out.print(x+" ");
}
}
}